System for estimating a quantity of parasitic leakage from a fuel injection system

ABSTRACT

A system for estimating a quantity of parasitic leakage of a fluid from a fluid collection unit includes a pressure sensor and a control circuit. The pressure sensor is coupled to the fluid collection unit and configured to produce a pressure value indicative of the pressure of the fluid collection unit. The control circuit is operable to determine a change in pressure value of the fluid collection unit and estimate the quantity of parasitic leakage based on the change in pressure value. The control circuit may also be operable to determine a bulk modulus value of the fluid and estimate the quantity of parasitic leakage based on the change in pressure value and the bulk modulus value.

CROSS-REFERENCE TO RELATED U.S. PATENT APPLICATION

This is a continuation-in-part of U.S. patent application Ser. No.10/417,829, filed Apr. 17, 2003 now U.S. Pat. No. 6,823,834, andentitled SYSTEM FOR ESTIMATING AUXILIARY-INJECTED FUELING QUANTITIESwhich is a continuation-in-part of U.S. patent application Ser. No.09/565,010, filed on May 4, 2000, now U.S. Pat. No. 6,557,530, andentitled FUEL CONTROL SYSTEM INCLUDING ADAPTIVE INJECTED FUEL QUANTITYESTIMATION.

FIELD OF THE DISCLOSURE

The present invention relates generally to fuel injection systems forinternal combustion engines, and more specifically to techniques forestimating pilot and/or post-injected fuel-quantities and minimizingvariations between such fuel quantities.

BACKGROUND OF THE DISCLOSURE

In recent years, advances in fuel systems for internal combustionengines, and particularly for diesel engines, have increaseddramatically. However, in order to achieve optimal engine performance atall operating conditions with respect to fuel economy, exhaustemissions, noise, transient response, and the like, further advances arenecessary. As one example, operational accuracy with electronicallycontrolled fuel systems can be improved by reducing variations ininjected fuel quantities.

A number of techniques, are known for reducing injected fuel quantityvariations such as, for example, robust system design, precisionmanufacturing, precise component matching, and electronic controlstrategies. However, conventional manufacturing approaches for improvingperformance, such as tightening tolerances and the like, are typicallycost prohibitive, and conventional control approaches such as open-looplook-up tables have become increasingly complex and difficult toimplement as the number of degrees of freedom to control have increased,particularly with multiple-input, multiple-output (MIMO) controlsystems. In fact, both of these approaches improve accuracy only duringengine operation immediately after calibration in a controlledenvironment, and neither compensate for deterioration or environmentalnoise changes, which affect subsequent performance. Closed-loop controlsystems for controlling injected fuel quantity variations areaccordingly preferable, but typically require additional sensors tomeasure appropriate control parameters.

One known technique for implementing such a closed-loop control systemwithout implementing additional sensors is to leverage existinginformation to estimate injected fuel quantity; i.e., implementation ofa so-called “virtual sensor.” One example of a known control system 10including such a virtual sensor is illustrated in FIG. 3. Referring toFIG. 3, system 10 includes a two-dimensional look-up table 14 receivingan engine speed/position signal via signal line 12 and a desired fuelinjection quantity value from process block 16 via signal path 18. Table14 is responsive to the engine speed/position signal and the desiredfuel injection quantity value to produce an initial fueling command asis known in the art. The virtual injected fuel quantity sensor in system10 typically comprises a two-dimensional look-up table 20 receiving theengine speed/position signal via signal path 12 and a fuel pressuresignal from signal path 22. Table 20 is responsive to the fuel pressureand engine speed/position signals to produce an injected fuel quantityestimate that is applied to summing node 24. Node 24 produces an errorvalue as a difference between the desired fuel injection quantity andthe injected fuel quantity estimate and applies this error value to acontroller 26. Controller 26 is responsive to the error value todetermine a fuel command adjustment value, wherein the Initial fuelingcommand and the fuel command adjustment value are applied to a secondsumming node 28. The output of summing node 28 is the output 30 ofsystem 10 and represents a final fueling command that is the initialfueling command produced by table 14 adjusted by the fuel commandadjustment value produced by controller 26.

While system 10 of FIG. 3 provides for a closed-loop fuel control systemutilizing a virtual sensor to achieve at least some control overvariations in injected fuel quantities, it has a number of drawbacksassociated therewith. For example, a primary drawback is that prior artsystems of the type illustrated in FIG. 3 are operable to compensate forvariations in only a single operating parameter. Control over variationsin additional parameters would require prohibitively large and difficultto manage multi-dimensional look-up tables, wherein such tables would belimited to only operating parameters capable of compensation via look-uptable techniques. For operating parameters that deteriorate or changewith time, for example, compensation via look-up tables simply does notwork without some type of scheme for updating such tables to reflectchanges in those operating parameters.

As another drawback of prior art systems of the type illustrated in FIG.3, such systems are not closed-loop with respect to injector-to-injectorfueling variations. For example, referring to FIG. 16, a plot 35 ofmeasured fuel injection quantity vs. injector actuator commanded on-time(i.e., desired fueling command) for each injector (cylinder) of asix-cylinder engine, is shown wherein the between-cylinder fuelingvariations are the result of various mismatches in the fueling systemhardware. As is apparent from plot 35, the between-cylinder fuelinjection quantity variations are quite pronounced and generallyunacceptable in terms of accurate fueling control. While known cylinderbalancing techniques could reduce such cylinder-to-cylinder fuelingvariations, the fuel control system of FIG. 3 would be ineffective inreducing such variations. Moreover, the fuel control system of FIG. 3would further be ineffective in reducing engine-to-engine fuelingvariations. Referring to FIG. 17, for example, plots of average injectedfuel vs. injector on-time for three engine fueling extremes areillustrated. Nominal engine fueling requirements are illustrated bycurve 36, minimum engine fueling conditions are illustrated by curve 38and maximum engine fueling conditions are illustrated by curve 40. Whileengines of the same type may be designed for identical fuelingrequirements, their actual fueling requirements may fall anywherebetween curves 38 and 40. Unfortunately, the prior art fuel controlsystem of FIG. 3 cannot compensate for such engine-to engine fuelingvariations. In general, if such control parameter variations are notattributable to the operating parameter for which the system is designedto compensate for, but are instead attributable to other error sourcesfor which the control system of FIG. 3 is not designed to compensatefor, the system performance may actually be worse than would otherwisebe the case with conventional fuel control techniques.

By the nature of their uses in a wide variety of applications, enginesare typically required over their operating lifetimes to work inenvironments wherein many internal and external parameters that affectengine performance may vary, cannot be controlled and/or cannot be, ortypically are not, measured. Heretofore, known control systems haveattempted to improve injected fueling accuracy using a parameter that isboth measurable and controllable. Such systems typically operate bymaking control changes, based on an estimated sensitivity in the fuelingquantity, to this measurable and controllable parameter using assumedvalues for other internal and/or external parameters rather than takinginto account performance effects and interactions of these otherparameters. By contrast, if the injected fueling quantity can beestimated utilizing a sensor or virtual sensor that is independent ofmany of the internal and external parameters that affect the engine'sinjected fueling quantity, a robust closed-loop fueling quantity controlcan be performed directly on the estimated fuel quantity rather than ononly one of the control parameters that affect the fueling quantity.What is therefore needed is an improved strategy for adaptivelyestimating injected fuel quantities based on real-time performance ofcertain fuel system operating conditions throughout an injection eventto thereby allow for robust and accurate operation as well asstraightforward integration into complex fuel control systems. Ideally,such a strategy should be capable of minimizing between-cylinder andbetween-engine fueling variations.

SUMMARY OF THE DISCLOSURE

The present invention may comprise one or more of the following featuresor combinations thereof. A system for estimating a quantity of parasiticleakage of a fluid from a fluid collection unit may include a pressuresensor coupled to the fluid collection unit and configured to produce apressure value indicative of a pressure of the fluid collection unit anda control circuit operable to determine a change in pressure value basedon the pressure value. The control circuit may further be operable toestimate the quantity of parasitic leakage based on the change inpressure value.

A method for estimating a quantity of parasitic leakage of a fluid froma fluid collection unit may includes the steps of hydraulically lockingthe fluid collection unit, determining a change in pressure value of thefluid collection unit, and estimating the quantity of parasitic leakageof the fluid based on the change in pressure value.

In an alternative embodiment, a method for estimating a quantity ofparasitic leakage of a fuel from a fuel collection unit of a fuel supplysystem for an internal combustion engine may include the steps ofdetermining an operating condition of the internal combustion engine,discontinuing pumping of the fuel into the fuel collection unit inresponse to the operating condition, determining a temperature value ofthe fuel, determining a pressure value of the fuel collection unit,determining a change in pressure of the fluid collection unit based onthe pressure value, determining a bulk modulus value of the fuel basedon the temperature value and the pressure value, and estimating thequantity of parasitic leakage based on the change in pressure and thebulk modulus value.

These and other objects of the present invention will become moreapparent from the following description of the illustrative embodiments.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1A is a diagrammatic illustration of one embodiment of a system forcontrolling fuel injection to an internal combustion engine, inaccordance with the present invention;

FIG. 1B is a diagrammatic illustration of an alternate embodiment of asystem for controlling fuel injection to an internal combustion engine,in accordance with the present invention;

FIG. 2 is a plot of fuel storage pressure vs. crank angle for differentfuel injection quantities;

FIG. 3 is a diagrammatic illustration of a prior art closed-loop fuelinjection control strategy including a known open-loop fuel quantityestimation technique, for a known fuel injection system;

FIG. 4 is a diagrammatic illustration of one embodiment of an improvedclosed-loop fuel injection control strategy including a fuel injectionquantity estimation technique, in accordance with the present invention;

FIG. 5 is a diagrammatic illustration of one embodiment of the fuelinjection quantity estimation block of FIG. 4, in accordance with thepresent invention;

FIG. 6 is a diagrammatic illustration of one embodiment of the totaldischarged fuel estimation block of FIG. 5, in accordance with thepresent invention;

FIG. 7 is a plot of bulk modulus vs. fluid pressure for an example fluidillustrating a slope and offset value associated therewith;

FIG. 8 is a plot of bulk modulus vs. fluid pressure for an example fluidillustrating a temperature dependency thereof;

FIG. 9 is a plot of fuel pump pressure vs. pump angle for fluids havingdifferent bulk modulus values;

FIG. 10 is a plot of the fuel pump pressure vs. pump angle of FIG. 9with the start of pressurization values adjusted for equal pressurevalues at 60 degrees before and after pump TDC;

FIG. 11 is a plot of fuel pump pressure slope vs. fuel pump pressure at60 degrees after pump TDC, illustrating distinct pressure and rate ofpressure change characteristics for different bulk modulus values;

FIG. 12A is a plot of the intercept of the curve of the fuel pumppressure slope vs. fuel pump pressure illustrating the relationship ofthe intercept of the fuel pump pressure slope curve to the tangent bulkmodulus offset;

FIG. 12B is a plot of the slope of the fuel pump pressure vs. fuel pumppressure illustrating the relationship of the fuel pump pressure slopeto the tangent bulk modulus slope;

FIG. 13 is a flowchart illustrating one preferred embodiment of asoftware algorithm for determining bulk modulus properties of the fuelwithin fueling system 50 or 50′, in accordance with another aspect ofthe present invention;

FIG. 14 is a diagrammatic illustration of one embodiment of the controlflow estimation block of FIG. 5, in accordance with the presentinvention;

FIG. 15 is a diagrammatic illustration of one embodiment of theparasitic flow leakage estimation block of FIG. 5, in accordance withthe present invention;

FIG. 16 is a plot of measured fuel injection quantity by cylinder vs.commanded injector on-time for a known fuel injection control system;

FIG. 17 is a plot of average fuel injection quantity vs. injectoron-time illustrating engine fueling extremes for a known fuel injectioncontrol system;

FIG. 18 is a plot of estimated fuel injection quantity vs. measured fuelinjection quantity using the fuel injection control strategy of thepresent invention;

FIG. 19 is a plot of predicted fuel injection quantity vs. desiredcommanded fueling per cylinder using the fuel injection control strategyof the present invention;

FIG. 20 is a flowchart illustrating one embodiment of a softwarealgorithm for diagnosing operational errors in a fuel injection controlsystem, in accordance with the present invention;

FIG. 21 is a diagrammatic illustration of one embodiment of step 308 ofthe algorithm of FIG. 20, in accordance with the present invention;

FIG. 22 is a diagrammatic illustration of one embodiment of step 310 ofthe algorithm of FIG. 20, in accordance with the present invention;

FIG. 23 is a plot of injector on-time vs. time illustrating amain-injection on-time pulse, any number of pilot or pre-injectionon-time pulses and any number of post-injection on-time pulses that maycomprise a single fuel injection event;

FIG. 24A is a plot of fuel pressure in the fuel collection unit vs. timeillustrating cyclic fuel pumping operation at low-to-moderate enginespeeds;

FIG. 24B is a plot of fuel pressure in the fuel collection unit vs. timeillustrating cyclic fuel pumping operation at high engine speeds;

FIG. 25 is a plot of fuel pressure in the fuel collection unit and fuelpump actuator current vs. time illustrating a technique for determininga pressure differential across a single fuel injection event while thefuel pump is disabled;

FIG. 26 is a flowchart illustrating one embodiment of a softwarealgorithm for minimizing post-injection fueling variations;

FIG. 27 is a flowchart illustrating an alternate embodiment of asoftware algorithm for minimizing post-injected fueling variations;

FIG. 28 is a flowchart illustrating one embodiment of a softwarealgorithm for generating a main-injected fuel quantity estimation model;

FIGS. 29A and 29B show a flowchart illustrating one embodiment of asoftware algorithm for generating a post-injected fuel quantityestimation model using the main-injected fuel quantity estimation modelgenerated by the algorithm of FIG. 28;

FIG. 30 is a flowchart illustrating another alternate embodiment of asoftware algorithm for minimizing post-injected fueling variations usingthe post-injected fuel quantity estimation model generated by thealgorithm of FIGS. 29A and 29B;

FIGS. 31A and 31B show a flowchart illustrating one embodiment of asoftware algorithm for generating a pilot-injected fuel quantityestimation model using the main-injected fuel quantity estimation modelgenerated by the algorithm of FIG. 28;

FIG. 32 is a flowchart illustrating one embodiment of a softwarealgorithm for minimizing pilot-injected fueling variations using thepilot-injected fuel quantity estimation model generated by the algorithmof FIGS. 31A and 31B;

FIG. 33 is a flowchart illustrating one embodiment of a softwarealgorithm for estimating a quantity of parasitic leakage for use withthe parasitic flow leakage estimation block of FIG. 5; and

FIG. 34 is a diagrammatic illustration of one embodiment of a bulkmodulus table for use with the software algorithm of FIG. 33.

DESCRIPTION OF THE ILLUSTRATIVE EMBODIMENTS

For the purposes of promoting an understanding of the principles of theinvention, reference will now be made to a number of illustrativeembodiments shown in the drawings and specific language will be used todescribe the same. It will nevertheless be understood that no limitationof the scope of the invention is thereby intended.

Referring now to FIG. 1A, one preferred embodiment of an electronic fuelcontrol system 50, in accordance with the present invention, is shown.Fuel control system 50 includes a source of fuel 52; e.g. diesel enginefuel, having an inlet port of a fuel pump 54 in fluid communicationtherewith. In one embodiment, fuel pump 54 is a high pressure pumpconfigured to supply high pressure fuel from fuel supply 52, which maytypically be a low pressure fuel supply pump operable to supply lowpressure fuel from a fuel source to,fuel pump 54, to at least one outletport thereof in a cyclic fashion. It is to be understood, however, thatthe present invention contemplates that pump 54 may alternatively beconfigured to supply pressurized fuel in a non-cyclic fashion. In anycase, in the system 50 of FIG. 1A, pump 54 is configured to supplypressurized fuel to a fuel collection unit 56 via supply passage 58.Fuel collection unit 56 is fluidly connected to a fuel injector 60 viasupply passage 62, and fuel injector 60 is configured to be mounted toan internal combustion engine 66 in fluid communication with acombustion chamber thereof as is known in the art. Fuel collection unit56 is fluidly coupled to any number of additional fuel injectors viasupply passage 64, and in typical applications a dedicated fuel injectoris provided for each of the number of cylinders of the engine 66. In theembodiment shown in FIG. 1A, the fuel collection unit 56 isconventionally referred to as a fuel accumulator or fuel storage unit.

Central to the electronic control of pump 54 and injector 60 is acontrol circuit 68 having a memory unit 75 associated therewith. In oneembodiment, control circuit 68 is a control computer of knownconstruction, wherein such a circuit 68 is typically referred to bythose skilled in the art as an electronic (or engine) control module(ECM), engine control unit (ECU) or the like, although the presentinvention contemplates that control circuit 68 may alternatively be anycircuit capable of performing the functions described hereinafter with.respect to circuit 68. In any case, control circuit 68 is operable, atleast in part, to control the fueling of engine 66 in accordance withone or more software algorithms stored within memory unit 75.

System 50 includes a number of sensors and/or sensor subsystems forproviding control circuit 68 with operational information relating tosome of the components of system 50 as well as certain engine operatinginformation. For example, fuel collection unit 56 includes a pressuresensor 70 electrically connected to an input IN1 of control circuit 68via a number, I, of signal paths 72, wherein I may be any positiveinteger. Sensor 70 is preferably a known sensor operable to sense thepressure of the volume of pressurized fuel within collection unit 56 andprovide a fuel pressure signal corresponding thereto to input IN1 ofcontrol circuit 68 via signal paths 72, as is known in the art. System50 further includes an engine speed/position sensor 76 electricallyconnected to an input IN2 of control circuit 68 via signal path 78. Inone embodiment, sensor 76 is a known engine speed/position sensorincluding a Hall effect sensor disposed proximate to a toothed gear orwheel rotating synchronously with the crankshaft of the engine (notshown). Preferably, the toothed gear or wheel includes a number ofequi-angularly spaced teeth as well as an extra tooth disposed betweenadjacent ones of the equi-angularly spaced teeth. Sensor 76 is operableto produce an engine speed/position signal including informationrelating to the rotational speed of the engine crank shaft (not shown)based on the passage thereby of the equi-angularly spaced teeth, as wellas information relating to engine position relative to a referenceengine position (e.g., angle of the crank shaft (crank angle) relativeto a top-dead-center (TDC) position of the engine cylinder in questionbased on passage thereby of the extra tooth. Alternatively, system 50may substitute the sensor 76 just described with one or more knownsensors producing equivalent information in the form of one or moreelectrical signals.

System 50 optionally includes an engine temperature sensor operable tosense the operating temperature of engine 66 and provide a correspondingengine temperature signal to an input IN3 of control circuit 68 via anumber, L, of signal paths 90, wherein L may be any positive integer. Inone embodiment, the engine temperature sensor is a known fueltemperature sensor 88, 20 as shown in phantom in FIG. 1A, wherein sensor88 is suitably located (e.g., within fuel collection unit 56) so as toprovide a signal to input IN3 of control circuit 68 indicative of thetemperature of the pressurized fuel supplied by pump 54. Alternatively,the engine temperature sensor may be a known coolant fluid sensor 93 asshown in phantom in FIG. 1A, wherein sensor 93 is suitably located so asto provide a signal to input IN3 of control circuit 68 via signal path95 that is indicative of the temperature of engine coolant fluid. Thoseskilled in the art will recognize that other known sensors or sensorsubsystems may be used in place of sensor 88 or sensor 93, wherein anysuch sensor or sensor subsystem is operable to produce one or moresignals from which engine operating temperature may be determined orestimated, and that any such sensor or sensor subsystem for determiningor estimating engine operating temperature is intended to fall withinthe scope of the present invention.

Control circuit 68 includes a number of outputs by which certaincomponents of system 50 may be electronically controlled. For example,output OUT1 of control circuit 68 is electrically connected to anactuator 53 of fuel pump 54 via a number, P, of signal paths 74, whereinP may be any positive integer and wherein actuator 53 may be a solenoidor other known actuator. In any case, actuator 53 of pump 54 isresponsive to a pump command signal produced by control circuit 68 onsignal path 74 to cause the pump 54 to supply fuel from fuel supply 52to fuel collection unit 56. Output OUT2 of control circuit 68 iselectrically connected to an actuator 80 (e.g., solenoid) of fuelinjector 60 via a number, J, of signal paths 82, wherein J may be anypositive integer, whereby actuator 80 is responsive to a fuel command orinjector on-time signal produced by control circuit 68 on signal path 82to actuate injector 60 to thereby dispense a quantity of fuel from fuelcollection unit 56 into a combustion chamber of engine 66. Additionally,actuator 80 is operable to direct unused (non-injected) fuel suppliedthereto to fuel source 52 via fuel passageway 81, as is known in theart.

It is to be understood that in the embodiment illustrated in FIG. 1A,system 50 may include any number of fuel pumps 54, fuel collection units56, fuel injectors 60 and associated passageways as indicated by theinteger designations of signal paths 72, 74, 80 and 90. As one specificexample, system 50 configured for a 6 cylinder engine may include a pairof fuel pumps 54, a pair of fuel collection units 56 and six fuelinjectors 60 wherein one fuel pump 54 and associated fuel collectionunit 56 is operable to supply pressurized fuel to a first bank of threefuel injectors (e.g., front bank) and the other fuel pump 54 andassociated fuel collection unit 56 is operable to supply pressurizedfuel to a second bank of three fuel injectors (e.g., rear bank). Thoseskilled in the art will recognize other combinations of fuel pump 54,fuel collection unit 56, fuel injector 60 and associated passageways,and that other such combinations are intended to fall within the scopeof the present invention.

Referring now to FIG. 1B, an alternative embodiment of an electronicfuel control system 50′, in accordance with the present invention, isshown. System 50′ is identical in many respects to system 50 of FIG. 1A,and like reference numbers are therefore used to identify likecomponents. System 50′ of FIG. 1B differs from system 50 of FIG. 1A inthat fuel pump 54 is fluidly connected directly to a so-called fuel“rail” 92 via supply passage 94, wherein the fuel rail 92 is fluidlyconnected to injector 60 and optionally to a number of additional fuelinjectors. In one embodiment of the fuel control system 50′ illustratedin FIG. 1B, the “fuel collection unit”, as this term is usedhereinabove, is comprised of the fuel rail 92, whereby a pressure sensor100 suitably located relative to rail 92 is electrically connected toinput IN1 of control circuit 68 via a number, M, of signals path 102 asshown in phantom in FIG. 1B. In this embodiment, pressure sensor 100 isoperable to sense the pressure of fuel within fuel rail 92 and provide acorresponding number, M, of fuel pressure signals corresponding thereto,wherein M may be any positive integer. In an alternative embodiment ofthe fuel control system 50′ of FIG. 1B, the “fuel collection unit” iscomprised of the fuel storage portion of fuel injector 60, whereby apressure sensor 96 suitable located relative to injector 60 iselectrically connected to input IN1 of control circuit 68 via a number,N, of signal paths 98 as shown in phantom in FIG. 15. In thisembodiment, pressure sensor 96 is operable to sense the pressure of fuelwithin injector 60 and provide a corresponding number, N, of fuelpressure signals corresponding thereto, wherein N may be any positiveinteger. It is to be understood that in either embodiment of the fuelcontrol system 50′ of FIG. 1B, any number of fuel pumps 54, fuelinjectors 60 and fuel rails 94 may be provided and fluidly connected toany desired combinations or groupings of fuel injectors 60, as describedwith respect to FIG. 1A, to thereby accommodate any desired fuelpump/fuel rail/injector combinations or groupings. In any case, itshould now be readily apparent that the term “fuel collection unit”, asit relates to the present invention, may be understood to identify anyof an accumulator-type storage unit, such as unit 56 of FIG. 1A, a fuelrail-type storage unit, such as fuel rail 94, or a fuel injector-typestorage unit, such as the fuel storage portion of injector 60, and thatthe term “fuel storage pressure” refers to the pressure of fuel storedwithin any of the foregoing fuel collection units.

Referring now to FIG. 2, some of the basic principles of the presentinvention will now be described. FIG. 2 shows a plot of fuel storagepressure vs. crank angle, wherein the illustrated fuel storage pressurecurves 110, 112 and 114 correspond to signals provided by any of thefuel pressure sensors 70, 96 or 100 (FIGS. 1A and 1B) and are thusrepresentative of fuel pressures within the “fuel collection unit” asthis term is defined hereinabove. The fuel storage pressure curves110,112,114 are plotted against crank angle throughout the conventionalspill, pressurization and expansion phases of fuel injection (i.e., afuel injection event), wherein pump actuator opening command (i.e.,control signal to the pump actuator 53 on signal path 74), injectoractuator closing command (i.e., control signal to the injector actuator80) and pump TDC (i.e., top dead center position of fuel pump 54relative to a reference pump position) indicators are included forreference. The fuel pump 54 spills low-pressure fuel until controlcircuit 68 produces a pump command on signal path 74 instructing thefuel pump actuator 53 to close. The earlier in the cycle that the pumpactuator 53 is closed, the higher the generated pressure will be in thefuel collection unit. After the actuator 53 is closed, the pump startsto increase the fuel pressure in the collection unit until the pumpplunger (not shown) retracts during the expansion phase of the cycle. Afuel injection event can be positioned either during the pressurizationphase, expansion phase or both, and is controlled by the injector'scontrol actuator 80. In FIG. 2, fuel storage pressure curve 110corresponds to fuel storage pressure when no fuel injection occurs, fuelstorage pressure curve 112 corresponds to fuel storage pressure when amedium quantity of fuel is injected and fuel storage pressure curve 114corresponds to fuel storage pressure when a large quantity of fuel isinjected.

In accordance with the present invention, estimation of injected fuelquantities for fuel systems which store pressurized fuel is based on theprinciple that the quantity of fuel removed from the fuel collectionunit (i.e., fuel storage device) is reflected in the magnitude of thechange in energy of the fuel collection unit across a fuel injectionevent. In the embodiments of system 50 and 50′ of FIGS. 1A and 1Brespectively, this change in energy of the fuel collection unit across afuel injection event is measured as a change in fuel pressure bymonitoring any of the fuel pressure sensors 70, 96 and 100.

However, those skilled in the art will recognize that other knownmechanisms may be used to measure the change in energy of the fuelcollection unit across a fuel injection event, and that such othermechanisms are intended to fall within the scope of the presentinvention. Examples of such other known mechanisms may include, but arenot limited to, known devices for determining changes in fuel mass, fuelvolume or strain of the fuel collection unit across a fuel injectionevent. In any case, the governing principle of the injected fuelquantity estimation technique of the present invention is based on achange in the amount of energy stored in the fuel collection unit acrossan injection event being equal to the net energy received from the fuelpump 54 minus the energy removed from the fuel collection unit pursuantto a fuel injection event minus any energy losses. For purposes of thedescription of the present invention hereinafter, the change in fuelcollection unit energy across an injection event will be limited tochanges in fuel pressure of the fuel collection unit, it beingunderstood that other known mechanisms, such as those listed above, forexample, may alternatively be used to measure changes in fuel collectionunit energy across a fuel injection event.

Referring now to FIG. 4, some of the internal features of controlcircuit 68, as they relate to fuel system control in accordance with thepresent invention, are shown. It is to be understood that not all suchinternal features are intended to represent physical structures withincontrol circuit 68, but are rather intended to represent a controlstrategy that may be executed by control circuit 68 via one or moresoftware algorithms stored in memory 75 of control circuit 68.

The internal features of control circuit 68 shown in FIG. 4 are similarin many respects to the internal features of the prior art controlcircuit 10 of FIG. 3, and like features are accordingly identified withlike reference numbers. An exception includes replacing the2-dimensional look up table 20 of FIG. 3 with a fuel injection quantityestimation block 132 in FIG. 4, wherein block 132 is configured toreceive a fuel pressure signal (FP) via signal path 72, an enginespeed/position signal (ES/P) via signal path 78 and a commanded fuelsignal (in terms of an injector on-time signal produced by controlcircuit 68 on signal path 82) via signal path 134. Optionally, as willbe described in greater detail hereinafter, fuel injection quantityestimation block 132 may additionally receive an engine temperaturesignal via signal path 90. An injected fuel estimate (IFE) value isproduced by fuel injection quantity estimation block 132 and is directedto a subtractive input of summing node 24 via signal path 136. Inaccordance with the present invention, the fuel injection quantityestimation block 132 thus serves as a virtual sensor operable toestimate injected fuel quantities.

In the operation of the portion of control circuit 68 illustrated inFIG. 4, two-dimensional look-up table 14 receives a fuel pressure signal(FP) via signal line 72 and a desired fuel injection quantity value (DF)from process block 16 via signal path 18. Table 14 is responsive to thefuel pressure signal and the desired fuel injection quantity value toproduce an initial fueling command as is known in the art. The fuelinjection estimation block 132 is responsive to at least the fuelpressure signal on signal path 72, the engine speed/position signal(ES/P) on signal path 78 and a final fueling command (injector on-timesignal (IOT)) on signal path 134 to estimate an injected fuel quantityand supply a corresponding injected fuel quantity estimate (IFE) to asubtractive input of summing node 24 via signal path 136. Node 24produces an error value as a difference between the desired fuelinjection quantity (DF) and the injected fuel quantity estimate (IFE)and applies this error value to a controller 26. Controller 26 isresponsive to the error value to determine a fuel command adjustmentvalue, wherein the initial fueling command and the fuel commandadjustment value are applied to additive inputs of a second summing node28. The output of summing node 28 is the output 82 of control circuit 68and represents a final fueling command that is the initial fuelingcommand produced by table 14 adjusted by the fuel command adjustmentvalue produced by controller 26.

Referring now to FIG. 5, one preferred embodiment of the fuel injectionquantity estimation block 132 of FIG. 4 is shown. Block 132 includes atotal discharged fuel estimate block 140 receiving the fuel pressuresignal (FP) via signal path 72 and the engine speed/position (ES/P)signal via signal path 78. Optionally, block 140 may be configured toreceive the engine temperature (or fuel temperature) signal (ET) viasignal path 90, as shown in phantom in FIG. 5. Block 140 is operable, aswill be more fully described hereinafter, to process the fuel pressureand engine speed/position signals (and optionally the engine/fueltemperature signal ET) and produce a total discharged fuel estimatevalue (TDFE) on signal path 144 corresponding to an amount ofpressurized fuel removed from the fuel collection unit 56 pursuant to afuel injection event.

Fuel injector control actuator 80 of fuel injector 60 is controlled bycontrol circuit 68 to direct or spill at least some of the pressurizedfuel supplied by fuel collection unit 56 to fuel injector 60 back tofuel supply 52 via a hydraulic path or fuel passageway 81 in order tocause an actual fuel injection event to occur, as is known in the art.In such cases, the fuel injection quantity estimation block 132 of thepresent invention accordingly includes a control flow leakage estimateblock 146 operable to estimate such a fuel spill amount, as will bedescribed more fully hereinafter, so that the fuel spill amount can besubtracted from the total discharged fuel estimate value (TDE) indetermining the injected fuel estimate (IFE). The fuel pressure signal(FP) on signal path 72 and the final fueling command (in terms ofinjector on-time IOT) on signal path 134 are provided to the controlflow leakage estimate block 146. Optionally, as shown in phantom in FIG.5, the engine temperature (or fuel temperature) signal ET may beprovided to block 146 via signal path 90. In any case, the control flowleakage estimate block 146 is operable to′process these signals andproduce a control flow leakage estimate value (CFLE) on signal path 148.Optionally, as shown in phantom in FIG. 5, one or more additionalsignals may be supplied to block 146 via signal path 187, wherein block146 is operable to process such signals along with the IOT and FPsignals to produce the control flow leakage estimate (CFLE). Examples ofsignals available on signal path 187 include, but are not limited to,engine speed/position, engine timing, and the like. In any case, signalpath 144 is supplied to an additive input of a summing node 142, andsignal path 148 is supplied to a subtractive input of summing node 142.An output of summing node 142 forms the output 136 of the fuel injectionquantity estimation block 132 and accordingly carries the injected fuelestimate value (IFE).

Those skilled in the art will recognize that the control flow leakageestimate block 146 is necessarily included in fuel systems havingso-called indirect control (e.g., injectors defining a hydraulic linkbetween the injector inlet port and outlet drain) over fuel injectordelivery time or “on-time” as this term is used herein. Conversely, itshould also be recognized that fuel systems are known that includestructure providing for direct control over fuel injector delivery timeor on-time. In these types of fuel systems, spill valves of the typejust described are therefore unnecessary and no control flow exists tocreate an actual injection event. In such systems, the control flowleakage estimate block 146 can therefore be omitted.

Optionally, as shown in phantom in FIG. 5, the fuel injection quantityestimation block 132 may include a parasitic flow leakage estimate block150 receiving the fuel pressure signal (FP) and engine speed/positionsignal (ES/P) via signal paths 72 and 78, respectively. Additionally,block 150 receives an engine temperature signal (ET) via signal path 90and the total discharged fuel estimate value TDFE on signal path 144 viasignal path 152. Finally, block 150 may be configured to receive one ormore additional signals via signal path 154 as will be more fullydescribed hereinafter. The parasitic flow leakage estimate block 150 isoperable to process the foregoing information and produce a parasiticflow leakage estimate (PFLE) on signal path 156 which is supplied to asubtractive input of summing node 142. The injected fuel estimate (IFE)of block 132 is, in this case, is the total discharged fuel estimate(TDFE) minus the control flow leakage estimate (CFLE) and the parasiticflow leakage estimate (PFLE).

In some fueling systems, the parasitic leakage on the injected fuel andquantity estimate (IFE) may be negligible. In other systems,non-negligible parasitic leakage levels may be minimized by reading pre-and post-injection fuel pressure values very close to the injectionevent itself. In any such fuel system embodiments wherein such parasiticleakage may be negligible, the parasitic flow leakage estimate block 150may be omitted from the fuel injection quantity estimation block 132,with the injected fuel estimate (IFE) then being computed as adifference between the total discharged fuel estimate (TDFE) and thecontrol flow leakage estimate (CFLE) in fuel systems having a controlflow of fuel as described above, or simply as the total discharged fuelestimate (TDFE) in fuel systems having no control flow. In other fuelsystems, the parasitic flow leakage estimate (PFLE) may contributesignificantly to the injected fuel estimate (IFE), in which case theparasitic flow leakage estimate block 150 should be included foraccuracy. In any case, preferred embodiments and operation of theparasitic flow leakage estimate block 150 will be more fully describedhereinafter.

Referring now to FIG. 6, one preferred embodiment of the totaldischarged fuel estimate block 140 of FIG. 5, in accordance with thepresent invention, is shown. Block 140 includes a fuel pressure samplingalgorithm 160 that is responsive to the fuel pressure signal (FP) onsignal path 72 and the engine speed/position signal (ES/P) on signalpath 78 to sample fuel pressure across a fuel injection event andproduce a pre-injection fuel pressure value (FP_(PRE)) and apost-injection fuel pressure (FP_(POST)). Preferably, the fuel pressuresampling algorithm 160 is operable to compute FP_(PRE) and FP_(POST) asaverage fuel pressures over predefined crank angle windows relative tocrank TDC. For example, in one embodiment algorithm 160 is operable tosample the fuel pressure signal on signal path 72 every 2 degrees ofcrank angle, and to compute FP_(PRE) as the average of eight fuelpressure values between −30 to −46 crank angle degrees prior to cylinderTDC, and FP_(POST) as the average of eight fuel pressure values between46 and 60 crank degrees after cylinder TDC. These sampling ranges areparticularly desirable in one embodiment since the pre-injectionsampling range occurs during the pressurization phase and slightlyprecedes the most advanced injection event, and the post-injectionsampling range occurs during the expansion phase and slightly followsthe end of the most retarded and longest injection event (see FIG. 2).It is to be understood, however, that other sampling ranges of anydesired crank angle window can be used to provide the pre- andpost-injection fuel pressure values FP_(PRE) and FP_(POST),respectively.

Optionally, the fuel pressure sampling algorithm 160 may be configuredto receive a number, K, of additional signals or values via signal path164, wherein algorithm 160 is responsive to such signals or values, inone embodiment, to more accurately match fuel pressure samples withactual crank angle values. An example of one such system operable toprovide additional signals or values to algorithm 160 via signal paths164 is described in U.S. Pat. No. 6,353,791, entitled APPARATUS ANDMETHOD FOR DETERMINING ENGINE STATIC TIMING ERRORS AND OVERALL SYSTEMBANDWIDTH, which is assigned to the assignee of the present invention,and the disclosure of which are incorporated herein by reference. Inaccordance with the teachings of the foregoing reference, algorithm 160is operable, in one embodiment, to receive a combined engine statictiming and fuel pump phasing error value EST/FPP and an overall systembandwidth value BW via signal paths 164, whereby algorithm 160 isresponsive to the EST/FPP and BW values to accurately match fuelpressure samples with crank angles at which such samples actually occurand thereby compensate for between-engine variations in such data.

The total discharged fuel estimate block 140 further includes a fueldischarge estimation block 162 operable to produce a total dischargedfuel estimate (TDFE) on signal path 144 based on at least the pre- andpost-injection fuel pressure values FP_(PRE) and FP_(POST) andoptionally on the engine speed/position signal (ES/P) provided on signalpath 78 as shown in phantom in FIG. 6. In one particular embodiment,block 162 comprises a regression-derived equation that produces thetotal discharged fuel estimate (TDFF) as a function of FP_(PRE) andFP_(POST) and also as a function of the engine speed/position signal(ES/P). For example, in this embodiment, the total discharged fuelestimate value (TDFE) is computed by block 162 in accordance with theequationTDFE=a+b*FP _(PRE) +c*FP _(PRE) *FP _(PRE) +d*FP _(POST) +e*FP _(POST)*FP _(POST) +f*(ES/P),wherein a–f are regression parameters. Those skilled in the art willrecognize that the foregoing regression equation parameters forestimating the total discharged fuel based at least on fuel pressurevalues may be determined using known and common curve-fittingtechniques, and that other curve-fitting equations, model-basedequations or other desired equations that are a function of at least, oronly, FP_(PRE) and FP_(POST) may be substituted for the foregoingregression equation for determining TDFE, and that such alternateequations are intended to fall within the scope of the presentinvention. Examples of other curve-fitting techniques, for example,include, but are not limited to, least squares data-fitting techniques,and the like. In any case, signal path 144 is the output of block 162and carries the total discharged fuel estimate (TDFE) produced by block140.

In an alternative embodiment, the total discharged fuel estimate block140 may be configured to include as part of the total discharged fuelestimate (TDFE) effects thereon of changes in the bulk modulus of thefuel contained in the fuel collection unit (as this term is definedhereinabove). For example, the relationship between energy stored in thefuel collection unit and the change in fuel volume is known to bedependent upon the effective bulk modulus of the system. In accordancewith one aspect of the present invention, an estimate of the effectivebulk modulus of the fuel system may thus be used to improve the totaldischarged fuel estimate (TDFE) of block 140.

The bulk modulus of a system expresses the resistance to volumetricreduction by pressure; i.e., the reciprocal of compressibility. Thepressure developed in a fluid compression system depends on factors suchas the system volume, the fluid's bulk modulus characteristics, thecontainer compliance, flow rates into and out of the system, the rate ofcompression, and heat transferred to and from the system. When a liquidis subjected to compression, the volume occupied by the liquid isreduced as the pressure increases, wherein this relationship is given bythe equation ∂P=−β∂V/V.

A number of techniques for characterizing the bulk modulus of fluids andfuels are known such as, for example, using a P-V-T(pressure-volume-temperature) technique or using an ultrasonic velocitytechnique. As a result of these techniques, the bulk modulus of a fluidhas been found to vary with pressure, temperature and molecularstructure. For fluids such as diesel fuel, the bulk modulus value hasbeen observed to increase almost monotonically with pressure, anddecrease as fuel temperature increases. For example, referring to FIG.7, a plot of bulk modulus (β) 255 of a fluid such as diesel fuel isshown vs. fluid pressure, wherein the bulk modulus function 255intercepts the zero pressure line at intercept 257 producing a bulkmodulus offset value 259. The slope of the bulk modulus function 255 isshown as a unit change in β divided by a unit change in pressure.Referring to FIG. 8, plots of bulk modulus (β) vs. fluid pressure areshown for two different fluid temperatures. Bulk modulus function 265represents the bulk modulus value at a low fluid temperature and bulkmodulus function 267 represents the bulk modulus value at a high fluidtemperature. It should be readily apparent from FIG. 8 that not only isthe bulk modulus of the fluid higher at low temperatures for any givenfluid pressure than at high temperatures, but that the slopes andzero-pressure intercepts are also different for the two temperatureextremes.

Moreover, the bulk modulus of a fluid blend has been found to bedirectly proportional to the bulk moduli of the fluid components. Forexample, water has a higher bulk modulus than diesel fuels which resultsin an increase in the bulk moduli of diesel fuel blends as the waterfraction increases. The bulk modulus also increases with an increase inthe specific gravity of the fuel.

In accordance with the present invention, fuel system components thatare packaged in the general form a fluid pressurizing pump connected toa high-pressure energy storage device connected to one or moreelectronically operable injector nozzles have been determined throughexperimentation to have similar characteristics to the P-V-T bulkmodulus measurement technique. As the fluid (e.g., diesel fuel) ispressurized by a pumping element, the current operating bulk moduluscharacteristics of the system can, in accordance with the presentinvention, be estimated at each pressurization or injection cycle usinginformation relating to changes in fuel pressure across a fuel injectionevent.

Referring now to FIG. 9, the effect of an offset in the tangent bulkmodulus of fuel contained in the fuel collection unit as a function offuel pressure on the pressurization and depressurization of a fuelsystem is shown. FIG. 9 shows three pressure curves as a function of anangle of fuel pump 54 relative to a reference pump position; i.e., pumptop-dead-center (TDC). Each of the three pressure curves corresponds toa different tangent bulk modulus value of the fuel contained within thefuel collection unit. For example, fuel pressure curve 250 has a tangentbulk modulus value of 1,000 MPa, fuel pressure curve 252 has a tangentbulk modulus value of 1,200 MPa, and fuel pressure curve 254 has atangent bulk modulus value of 1,400 MPa.

The offsets in tangent bulk modulus illustrated in FIG. 9 may be theresult of any of a number of factors such as, for example, a change intemperature or a change in the pressurized volume, but could also be theresult of changes in fuel properties. In any case, the pressure curves250, 252 and 254 illustrate that fuel is pressure increases as thetangent bulk modulus increases. In most fuel systems, the start ofpressurization can be controlled, whereby the start of pressurizationcan be adjusted in order to obtain the same pressure at a pump positionfor the different tangent bulk modulus values. For example, referringnow to FIG. 10, pressure curves 256, 258 and 260 correspond directly topressure curves 250, 252 and 254 of FIG. 9 with the start ofpressurization adjusted in order to obtain the same pressure at 60 pumpdegrees before pump TDC. Although the pressures are the same at thespecified pump position, it can be seen that the rate of change of fuelpressure as a function of the pump position differs for each tangentbulk modulus value.

In accordance with the present invention, test cases were modeled fordifferent bulk modulus characteristics as the start of pumppressurization and the volume of fluid removed from the system werevaried. Results of these tests are shown in FIG. 11, which illustratesthat for each bulk modulus curve as a function of pressure, a uniquecombination of pressures and rate of changes of pressure result. For thesystem modeled, these combinations of pressure and rate of changes ofpressure were found to be on unique lines for each bulk moduluscombination. Increasing the tangent bulk modulus at 0 MPa (a bulkmodulus offset) produced an offset in the pressure slope as a functionof pressure at a sampled pump position. Increasing the tangent bulkmodulus slope as a function of pressure produced an increase in theslope of the curve of the. pressure slope as a function of pressure atthe selected pump sampling position. Within FIG. 11, for example, lines262 and 266 had a tangent bulk modulus slope versus fuel pressure valueof 14, whereas line 262 has a tangent bulk modulus at 0 MPa of 1,500 MPaand line 266 has a tangent bulk modulus at 0 MPa of 900 MPa. Bycontrast, line 264 has a tangent bulk modulus at 0 MPa of 1,500 MPa, yethas a tangent bulk modulus slope versus fuel pressure of 6. Likewise,line 268 has a tangent bulk modulus slope versus fuel pressure of 6, yethas a tangent bulk modulus at 0 MPa of 900 MPa. From FIG. 11, it isapparent that a combination of pressure and the rate of change inpressure at a specified pump position can be used to estimate theeffective bulk modulus of a system and the bulk modulus of a fluid. Forthe system modeled, the intercepts (e.g., points 269 and 271 in FIG. 11)of the curve of the pressure slope as a function of the fuel pressureare related to the tangent bulk modulus offset. Referring to FIG. 12A,this relationship is shown wherein line 270 corresponds to 60 pumpdegrees after pump TDC and line 272 corresponds to 60 degrees prior topump TDC. Similarly, the slopes (e.g., slopes 281 and 282 in FIG. 11) ofthe curve of the pressure slope as a function of the fuel pressure arerelated to the tangent bulk modulus slope. Referring to FIG. 12B, theslope of the curve of the fuel pressure slope as a function of the fuelpressure, as shown in FIG. 11, is shown to be related to the tangentbulk modulus slope as a function of fuel pressure wherein line 274corresponds to 60 pump degrees after pump TDC and line 276 correspondsto 60 pump degrees prior to pump TDC.

Referring back to FIG. 6, the total discharged fuel estimate block 140may be modified in accordance with concepts just described, to take intoaccount in the calculation of the total discharged fuel estimate (TDFE)effects of changes in bulk modulus of the fuel. For example, block 140may include a pre- and post-injection fuel pressure slope determinationblock 166 receiving the individual pre-injection fuel pressure valuesFP_(PREi) and individual post-injection fuel pressure values FP_(POSTi)from the fuel pressure sampling algorithm 160. Optionally, block 166 maybe configured to receive the engine temperature (or fuel temperature)signal via signal path 90, as shown in phantom. In any case, block 166is operable to determine in accordance with well-known equations, theslope of the pre-injection fuel pressure signal during the predefinedcrank angle window (SLOPE_(PRE)) and the post-injection slope of thefuel pressure signal during the predefined crank angle window(SLOPE_(POST)) respectively. The fuel pressure slope values are thenprovided to the fuel discharge estimation block 162 wherein block 162 isconfigured, in this embodiment, to compute TDFE as a function of atleast FP_(PRE), FP_(POST), SLOPE_(PRE) and SLOPE_(POST). In oneembodiment, for example, fuel discharge estimation block 162 is operableto compute the discharged fuel estimate TDFE in accordance with aregression equation of the type described hereinabove with respect tothe previous embodiment of block 140, wherein at least the valuesSLOPE_(PRE) and SLOPE_(POST) are used in addition to the values FP_(PRE)and FP_(POST) (e.g.,TDFE=a+b*FP_(PRE)+c*FP_(PRE)*FP_(PRE)+d*FP_(POST)+e*FP_(POST)*FP_(POST)+f*SLOPE_(PRE)+g*SLOPE_(PRE)*SLOPE_(PRE)+h*SLOPE_(POST)+i*SLOPE_(POST)*SLOPE_(POST)+j(ES/F), wherein a–j are regression parameters. As with the previouslydiscussed embodiment of block 162, however, those skilled in the artwill recognize that the foregoing equation parameters may be determinedusing known and common curve-fitting techniques, and that othercurve-fitting equations, model-based equations or other desiredequations that are a function of at least FP_(PRE), FP_(POST),SLOPE_(PRE) and SLOPE_(POST) may be substituted for the foregoingregression equation for determining TDFE, and that such alternateequations are intended to fall within the scope of the presentinvention. Examples of other curve-fitting techniques, for example,include, but are not limited to, least squares data-fitting techniques,and the like. In any case, signal path. 144 is the output of block 162and carries the total discharged fuel estimate (TDFE) produced by block140.

Block 166 may additionally be configured to produce an instantaneousbulk modulus value β_(i) on signal path 163 corresponding to theinstantaneous bulk modulus of the pressurized fuel, a bulk modulus slopevalue β_(S) on signal path 165 corresponding to a slope of the bulkmodulus function over a range of fuel pressure values, a bulk modulusintercept value β_(l) corresponding to a zero-pressure bulk modulusvalue of the bulk modulus function on signal path 169 and a bulk modulusfunction β.

Referring to FIG. 13, one preferred embodiment of a software algorithm400 for determining the foregoing bulk modulus information, inaccordance with another aspect of the present invention, is shown.Algorithm 400 is preferably stored within memory 75 and is executablevia control circuit 68. Algorithm 400 begins at step 402 and at step 404control circuit 68 is operable to determine the slope (SLOPE1) or rateof change of the fuel pressure signal (FP) at a first-fuel supplypressure (FSP1). Generally, control circuit 68 is operable at step 404to determine SLOPE1 anywhere along the cyclically varying fuel pressuresignal on signal path 72, although as a practical matter, some fuelpressure ranges may be better suited than others for determining theslope value, wherein the particular fuel system configuration willtypically dictate such fuel pressure ranges. In one known fuel system,for example, the post-injection portion of the fuel pressure signal onsignal path 72 is less noisy than the pre-injection portion and theslope values SLOPE1 of step 404 is therefore preferably determined alonga crank angle window corresponding to the post-injection portion of thefuel pressure signal on signal path 72. In this embodiment, fuelpressure samples for determining SLOPE1 are preferably taken duringvehicle motoring conditions (i.e., zero-fueling conditions) so thatfluid volumes remain relatively constant during the post-injection areaof the fuel pressure signal. As this embodiment relates to fuel system50 or 50′ of the present invention, control circuit 68 may be operableat step 404 to either sample the fuel pressure signal FP during adesired post-injection crank angle window, or may alternatively use thealready available FP_(POST) values. In either case, control circuit 68is operable to compute SLOPE1 from the number of fuel pressure samplesusing well-known equations. In other fuel systems, the pre-injectionportion of the fuel pressure signal on signal path 72 may be less noisythan other portions of the fuel pressure signal, and it may therefore bepreferable to compute SLOPE1 at step 404 during a desired crank anglewindow corresponding to the pre-injection portion of the fuel pressuresignal FP. In this embodiment, the fuel pressure signal samples need notbe taken under motoring conditions and may instead be taken under normaloperating conditions. As this embodiment relates to fuel system 50 or50′ of the present invention, control circuit 68 may be operable at step404 to either sample the fuel pressure signal FP during a desiredpre-injection crank angle window, or may alternatively use the alreadyavailable FP_(PREi) values. Those skilled in the art will recognize thatother portions of the fuel pressure signal on signal path 72 may besampled for subsequent calculation of SLOPE1 at step 404, and that suchalternative fuel pressure sampling strategies are intended to fallwithin the scope of the present invention.

From step 404, algorithm 400 advances to step 406 where control circuit68 is operable to determine an average fuel pressure value (AFP1) of thefuel pressure values used in the determination of SLOPE1 at step 404. Inone embodiment, for example, control circuit 68 is operable at step 406to determine AFP1 as a mean pressure value over the range of pressurevalues used in the determination of SLOPE1 at step 404. In any case,algorithm 400 preferably follows two separate branches from step 406.Along a first branch, algorithm execution advances from step 406 to step408 where control circuit 68 is operable to compute an instantaneousbulk modulus value, β_(i) as a known function of SLOPE1 and AFP1. Forexample, control circuit 68 is operable in one embodiment to determinethe instantaneous bulk modulus value β_(i) from the relationship∂P=−β∂V/V described hereinabove. Algorithm 400 advances from step 408 tostep 426 where execution of algorithm 400 awaits return to its callingroutine.

Along a second branch, algorithm 400 advances from step 406 to step 410where control circuit 68 is operable to determine a slope (SLOPE2) ofthe fuel pressure-signal (FP) at a second fuel supply pressure (FSP2)using any of the techniques described hereinabove with respect to step404. Preferably, control circuit 68 is operable to determine the SLOPE1and SLOPE2 values at identical crank angle windows with two discerniblydifferent fuel supply pressures. In any case, algorithm 400 advancesfrom step 410 to step 412 where control circuit 68 is operable todetermine an average fuel pressure value (AFP2) of the fuel pressurevalues used to determine SLOPE2. In one embodiment, control circuit 68is operable to determine AFP2 as a mean value of the pressure samplesused to compute SLOPE2. From step 412, algorithm execution advances tostep 414.

At step 414, control circuit 68 is operable to determine a resultantslope (RS) of the fuel pressure slope and a resultant intercept (RI) ofthe fuel pressure slope as a function of fuel pressure. In oneembodiment, control circuit 68 is operable to execute step 414 bycomputing a first-order equation of pressure slope vs. average pressurevalue using SLOPE1, SLOPE2, AFP1 and AFP2. The slope of this first orderequation is the resultant slope (RS), and the resultant intercept (RI)is the value of the first-order equation at zero pressure.Alternatively, the present invention contemplates using other knownmathematical techniques for determining RS and RI, and such other knowntechniques should be understood to fall within the scope of the presentinvention.

In any case, algorithm execution continues from step 414 to 15 416wherein control circuit 68 is operable map the resultant slope of thefuel pressure slope determined at step 414 to a tangent bulk modulusslope (β_(S)). In one embodiment, memory unit 75 of control circuit 68has stored therein a relationship between the slope of the fuel pressureslope and tangent bulk modulus slope such as that illustrated in FIG.12B, whereby control circuit 68 is operable to determine β_(S) directlyfrom this relationship. Those skilled in the art will recognize that therelationship between slope of the fuel pressure slope and tangent bulkmodulus slope may be implemented in a number of different forms such asby a table, graph, one or more mathematical equations, or the like.

Algorithm 400 advances from step 436 to step 418 where control circuit68 is operable to map the resultant intercept (RI) of the fuel pressureslope determined at step 414 to a tangent bulk modulus intercept(β_(l)). In one embodiment, memory unit 75 of control circuit 68 hasstored therein a relationship between the intercept (RI) of the fuelpressure slope and tangent bulk modulus intercept such as thatillustrated in FIG. 12A, whereby control circuit 68 is operable todetermine β_(l) directly from this relationship. Those skilled in theart will recognize that the relationship between the intercept of thefuel pressure slope and tangent bulk modulus intercept β_(l) may beimplemented in a number of different forms such as by a table, graph,one or more mathematical equations, or the like. In any case, algorithm400 preferably advances along two separate branches following executionof step 418. Along a first path, step 418 advances to step 426 wherealgorithm 400 awaits return to its calling routine. Along a second path,step 418 advances to step 420.

By the nature of their use, diesel engines are required to operate overa wide temperature range and with a wide range of fuel blends. If theengine fuel temperature signal is supplied as an input to block 166 viasignal path 90, the bulk modulus characteristics of the system and fuelas a function of temperature can easily be determined given the tangentbulk modulus slope β_(S) and tangent bulk modulus intercept β_(l) valuesdetermined at steps 416 and 418. At step 420, control circuit 68 is thusoperable to sense engine temperature ET or fuel temperature FT, and atstep 422 control circuit 68 is operable to define a bulk modulusfunction β using well-known equations, wherein β is a function of β_(l),β_(S), ET (or FT) and fuel pressure FP. It should be noted that controlcircuit 68 determines at step 422 a bulk modulus function β similar tothat illustrated graphically in FIG. 8 for the fuel (e.g., diesel fuel)supplied by the fuel collection unit. This fluid bulk modulusinformation can be used, for example, with other engine controlfunctions to obtain additional information about the fuel using knownrelationships between bulk modulus characteristics and other fluidproperties such as, for example, density, viscosity, sonic speed,specific heat and heating value. Information relating to these fuelproperties may be leveraged by other engine control systems to improveengine and fuel system performance.

The branch of algorithm 400 including steps 420 and 422 may optionallyinclude a step 424 wherein control circuit 68 is operable to determinean instantaneous bulk modulus value β_(i) based on the bulk modulusfunction β determined at step 422. In any case, algorithm 400 advancesfrom step 424 (or from step 422 if step 424 is omitted) to step 426where algorithm 400 is returned to its calling routine. It is to beunderstood that while algorithm 400 is shown and described as executingthree distinct branches, control circuit 68 may be configured to executeonly any one or combination of the three branches, depending upon thetype and amount of information desired. For the embodiment illustratedin FIG. 6, however, block 166 is preferably operable to produce theinstantaneous bulk modulus value β_(i) on signal path 163, the bulkmodulus slope value β_(S) on signal path 165, the bulk modulus interceptvalue β_(l) on signal path 169, and the bulk modulus function β onsignal path 167.

Referring now to FIG. 14, one preferred embodiment of the control flowleakage estimate block 146 of FIG. 5, in accordance with the presentinvention, is shown. Block 146 includes a fuel injection pressuredetermination block 180 receiving the fuel pressure signal (FP) viasignal path 72 and the commanded fuel signal (injector on-time signal,IOT) via signal path 134. Additionally, block 180 may receive one ormore engine operating signals via signal path 182. Such engine operatingsignals may include, but are not limited to, an injector timing signal,an injector delay signal, and the like. In any case, block 180 isresponsive to at least the fuel pressure signal and the commandedfueling signal (injector on-time signal) to compute a representativefuel injection pressure value (P_(INJ)) and provide the P_(INJ) value onsignal path 184, wherein P_(INJ) corresponds to an average pressure offuel injected into a combustion chamber of engine 66 via fuel injector60 pursuant to a fuel injection event. In one specific embodiment, block180 is operable to determine P_(INJ) in accordance with the equation:P _(INJ)=(Σ^(m2) _(n=m1) fuel pressure)/(m 2−m 1+1),wherein m1=0.5*(injector timing+30) and m2=m1+(750/engine speed)*(Σ⁴_(y=1)IOT+Σ_(n=12,23,34) injector delay), and wherein the constantvalues in the foregoing equations are dictated by the specific engine,vehicle, fuel system, etc. configuration. In cases wherein the fuelinjector 60 includes a pressure intensifier, as this term is commonlyunderstood in the art, the estimated fuel injection pressure is computedas a product of P_(INJ) and an intensification ratio of the pressureintensifier. Those skilled in the art will recognize that thedetermination of P_(INJ) according to the foregoing technique willdepend in large part upon the particulars of the engine and fuel system,that the foregoing equation will require modification depending upon theengine and fuel system used, and that such modifications are intended tofall within the scope of the present invention. In a general sense,though, it is to be understood that determination of the averageinjected fuel pressure P_(INJ) is a measure of the fuel storage pressuresignal only during fuel injection events.

The present invention contemplates alternate techniques for determiningthe representative fuel injection pressure, P_(INJ), and some of thesecontemplated techniques are set forth in U.S. Pat. No. 6,497,223,entitled FUEL INJECTION PRESSURE CONTROL SYSTEM FOR AN INTERNALCOMBUSTION ENGINE, which is assigned to the assignee of the presentinvention, and the disclosure of which is incorporated herein byreference. Those skilled in the art will recognize that such alternatetechniques for determining P_(INJ) including those described in theforegoing reference are intended to fall within the scope of the presentinvention.

Block 146 further includes an injection event-based control flow leakageestimation block 186 that is responsive to the P_(INJ) value on signalpath 184 and the commanded fueling signal (injector on-time signal) onsignal path 134 to produce a control flow leakage estimate value foreach injection event (CFLE_(IE)) on signal path 190. In one embodiment,block 186 comprises a two-dimensional look-up table having as tableinputs the average injection pressure (P_(INJ)) and the injector on-timesignal (IOT) and having as the table output the control flow leakageestimate value CFLE_(IE). It is to be understood, however, that such alookup table represents only one preferred embodiment of block 186, andthat the present invention contemplates other techniques for determiningthe CFLE_(IE) values. Examples of such other techniques include, but arenot limited to equations, other tables, graphs and/or the like, whereinsuch equations, other tables, graphs and/or the like are intended tofall within the scope of the present invention. Optionally, as shown inphantom in FIG. 14, block 186 may be configured to receive the enginetemperature (or fuel temperature) signal ET via signal path 90, in whichcase block 186 may comprise a three-dimensional look-up table or thelike. In any case, signal path 190 is connected to an input of a summingnode 188, wherein summing node 188 is operable to sum each of a number,N, of individual control flow leakage estimates CFLE_(IE), wherein N maybe any positive integer, with N=4 being a typical value. The output ofsumming node 188 is connected to signal path 148 and is the control flowleakage estimate CFLE that is supplied to summing node 142 of FIG. 5.Preferably, a cylinder balancing algorithm is executed in allembodiments of the present invention that include the control flowleakage estimation block 146, wherein one particularly useful cylinderbalancing algorithm is described in U.S. Pat. No. 6,021,758, which isassigned to the assignee of the present invention, and the disclosure ofwhich are incorporated herein by reference. While a cylinder balancingalgorithm is not required with the present invention, such an algorithmwill act to tighten up the distribution of between-cylinder fuelinjection amounts illustrated in FIG. 16.

Referring now to FIG. 15, one preferred embodiment of the parasitic flowleakage estimate block 150 of FIG. 5, in accordance with the presentinvention, is shown. In many fuel systems, fuel injector 60 (FIGS. 1Aand 1B) includes an intensifier (plunger or the like) as brieflydescribed hereinabove, wherein the intensifier acts to increases fuelpressure beyond that of the fuel collection unit prior to injection.With such injectors, parasitic fuel leakages tend to occur about theintensifier area, wherein such parasitic leakage is typically a functionof fuel pressure and engine or fuel temperature. Accordingly, block 150includes a parasitic flow leakage estimation block 196 receiving thefuel pressure signal (FP) via signal path 72 and the engine temperaturesignal ET (e.g., fuel temperature signal or engine coolant temperaturesignal) via signal path 90, and producing a parasitic flow leakageestimate on output signal path 198 as a function of FP and ET. In oneembodiment, block 196 is a two-dimensional lookup table having as inputsFP and ET, and producing a parasitic flow leakage estimate value as anoutput thereof. It is to be understood, however, that such a look-uptable represents only one preferred embodiment of block 196, and thatthe present invention contemplates other techniques for determining theparasitic flow leakage estimate values. Examples of such othertechniques include, but are not limited to equations, other tables,graphs and/or the like, wherein such equations, other tables, graphsand/or the like are intended to fall within the scope of the presentinvention.

In one embodiment, the parasitic flow leakage estimation block 196 isdefined at a specific or calibration engine speed value. In thisembodiment, that calibration engine speed value is preferably stored inblock 202 and provided to one input of a division node 204. Anotherinput of division node 204 receives the engine speed/position signal(ES/P) via signal path 78 such that an output of division node 204carries a ratio of the calibration engine speed divided by the currentengine speed ES/P. This ratio is provided to one input of amultiplication node 206 having another input receiving the parasiticflow leakage estimate value on signal path 198, whereby the output ofmultiplication node 208 carries the parasitic flow leakage estimatevalue multiplied by the ratio of the calibration engine speed divided bythe current engine speed. In this manner, the parasitic flow leakageestimation value on signal path 208 is adjusted by the current enginespeed value ES/P. Those skilled in the art will recognize othertechniques for maintaining an accurate parasitic flow leakage estimationwith respect to current engine speed, and such other techniques areintended to fall within the scope of the present invention. In any case,signal path 208 is connected, in one embodiment, directly to signal path156 such that the parasitic flow leakage estimation output of themultiplication node 206 forms the parasitic flow leakage estimationvalue (PFLE) provided to summing node 142 of FIG. 5.

In an alternate embodiment, the parasitic flow leakage estimate block150 may additionally include a control structure for adjusting theparasitic flow leakage estimation value produced by multiplication node206 based on changes in engine operating temperature, total dischargedfuel estimate value TDFE and/or engine speed/position ES/P. An exampleof one embodiment of such a control structure is illustrated in FIG. 15as encompassed by dashed-lined box 200, wherein the control strategyillustrated therein is operable to collect certain operating parametersduring vehicle motoring conditions (i.e., final commanded fueling=zero),and adjust the parasitic flow leakage estimation value produced by block196. In this embodiment, signal path 208 is connected to an additiveinput of a summing node 224 and to an subtractive input of anothersumming node 210. A non-inverting input of summing node 210 receives thetotal discharged fuel estimate value TDFE via signal path 152 and anoutput of node 210 provides an error signal, corresponding to thedifference between TDFE and the parasitic leakage flow estimationproduced at the output of multiplication node 206, to a first input ofan injection pressure compensation block 214. A second input of block214 receives the fuel pressure signal (FP) via signal path 72, and athird input of block 214 receives a previous motoring injection pressurevalue PMIP from a previous motoring conditions block 215, wherein block215 is operable, in part, to collect and store the fuel pressure value(FP) from a previous vehicle motoring condition. In one embodiment, theinjection pressure compensation block 214 comprises a fuel injectionpressure compensation equation of the form P_(COMP)=1+a*(FP-PMIP),wherein a is a calibratible constant and P_(COMP) is a fuel pressurecompensation value output by block 214 on signal path 218. Those skilledin the art will recognize, however, that the foregoing equation may bereplaced with one or more other equations, tables, graphs, or the like,and that such other equations, tables, graphs, or the like are intendedto fall within the scope of the present invention. Block 214 is operableto multiply the error value on signal path 212 by the fuel pressurecompensation value P_(COMP) and produce a first resultant error value onsignal path 218.

Signal path 218 is connected to a first input of an engine temperaturecompensation block 216. A second input of block 216 receives the enginetemperature signal ET via signal path 90, and a third input of block 216receives a previous motoring engine temperature value PMET from theprevious motoring conditions block 215, wherein block 215 is operable,in part, to collect and store the ET value from a previous vehiclemotoring condition. In one embodiment, the engine temperature signals ETand PMET correspond to fuel temperatures and engine temperaturecompensation block 216 comprises a fuel temperature compensationequation of the form FT_(COMP)=1+a*(ET−PMET), wherein a is acalibratible constant and FT_(COMP) is a fuel temperature compensationvalue output by block 216 on signal path 220. Those to skilled in theart will recognize, however, that the foregoing equation may be replacedwith one or more other equations, tables, graphs, or the like, and thatsuch other equations, tables, graphs, or the like are intended to fallwithin the scope of the present invention. Alternatively, block 216 maybe operable to compute an engine temperature compensation valueET_(COMP) and provide ET_(COMP) on signal path 220, wherein ET and PMETare engine coolant temperature values. In any case, block 216 isoperable to multiply the first resultant error value on signal path 218by the fuel temperature compensation value FT_(COMP) (alternatively bythe engine temperature compensation value ET_(COMP)) to produce a secondresultant error value on signal path 220.

Signal path 220 is connected to a first input of an engine speedcompensation block 219. A second input of block 219 receives the enginespeed/position signal ES/P via signal path 78, and a third input ofblock 219 receives a previous motoring engine speed value PMES from theprevious motoring conditions block 215, wherein block 215 is operable,in part, to collect and store the ES value from a previous vehiclemotoring condition. In one embodiment, the engine speed compensationblock 219 comprises a multiplier operable to multiply the secondresultant error value on signal path 220 by a ratio of ES/P and PMES,and produce as an output on signal path 222 a third resultant errorvalue. Those skilled in the art will recognize, however, that theforegoing table may be replaced with one or more other tables,equations, graphs, or the like, and that such other tables, equations,graphs, or the like are intended to fall within the scope of the presentinvention.

Signal path 222 is connected to a second additive input of summing node224, wherein an output of node 224 defines signal path 156 which carriesthe parasitic flow leakage estimate value PFLE. In this embodiment,summing node 224 thus adds the parasitic flow leakage estimation valueproduced by multiplication node 206 to the third resultant error valueto thereby produce an adjusted parasitic leakage flow estimation valuePFLE on signal path 156. Optional block 200 is thus operable tocompensate for instantaneous changes in the fuel pressure signal (FP),the engine temperature signal (ET) and the engine speed signal (ES/P)since the most recent vehicle motoring condition, and adjust theparasitic leakage flow estimation value produced by multiplication node206 accordingly. It is to be understood that, in this embodiment, block200 operates continuously, and that preferably summing node 210operates, and block 215 updates, during every vehicle motoringcondition.

Referring now to FIG. 18, a plot of estimated fuel injection quantity,using the control structure illustrated in FIG. 5 versus measuredinjected fuel quantity is shown. As is evident from the curve fittedline 280, the control strategy of the present invention for estimatinginjected fuel quantity tracks very closely with actual (measured)injected fuel quantities. Referring to FIG. 19, predicted fuel injectionquantity is plotted against desired commanded fueling for each cylinderof a six-cylinder engine. The six tightly grouped lines 290 indicatethat the within engine injected flow variability is quite low using thecontrol concepts of the present invention.

The use of a virtual sensor for estimating injected fuel quantities,such as that shown in FIGS. 4–6 and 14–15, in a system wherein theinjected fueling quantity and injection pressure can be changedinstantaneously, allows for component level diagnostics with very fastfailure detection. Referring to FIG. 20, a software algorithm 300 isillustrated for diagnosing component level fuel system failures which isapplicable to any fuel system, such as that described herein, in whichaccurate measurements of injected fueling and injection pressure areavailable (either via real or virtual measurements) and in whichinjection pressure and injected fuel quantity can be changedinstantaneously within one firing cycle. Algorithm 300 is preferablystored within memory 75 of control circuit 68, and is preferablyexecuted every firing cycle. Algorithm 300 starts at step 302, and atstep 304 control circuit 68 is operable to determine for each cylinder anumber of control parameters. For example, control circuit 68 isoperable at step 304 to determine a desired injection pressure (DP),which is a value determined by control circuit 68 and used to controlpump actuator 53 via signal path 74 as is known in the art.Additionally, control circuit 68 is operable at step 304 to determine ameasured injection pressure (MP) which, in one embodiment, is thepressure signal provided by sensor 70, 96 or 100 and multiplied by theintensification ratio of the intensifier associated with fuel injector60. Control circuit 68 is further operable at step 304 to determine adesired injected fuel value (DF), which is preferably the value producedby block 16 of FIG. 4. Additionally at step 304, control circuit 68 isoperable to determining measured injected fuel value (MF) which, in oneembodiment, is the injected fuel estimation value (IFE) produced by thefuel injection quantity estimation block 132 of FIG. 4. Alternatively,the system of FIG. 1A or 1B may include known structure for measuringinjected fuel quantities wherein control circuit 68 may be operable insuch an embodiment to determine MF by directly measuring injected fuelquantities. In any case, control circuit 68 is further operable at step304 to determine an average engine speed based on the enginespeed/position signal ES/P provided by engine speed/position sensor 76on signal path 78, wherein the average engine speed (AES) is the enginespeed averaged over one engine cycle. Additionally, control circuit 68is operable at step 304 to determine an engine speed value (ES), whichis preferably the engine speed determined from engine speed/positionsignal ES/P on signal path 78 and averaged over one firing cycle ofengine 66.

Algorithm execution continues from step 304 at step 306 where thecontrol circuit 68 is operable to determine, for each cylinder, apressure error (PE), a fuel error (FE) and a speed error (SE).Preferably, PE is determined in step 306 as a difference between DP andMP, FE is determined as a difference between DF and ME, and SE isdetermined as a difference between ES and AES. Algorithm executioncontinues from step 306 at step 308 where control circuit 68 is operableto determine error states of the pressure error (PE), fuel error (FE)and speed error (SE) for each cylinder. Referring to FIG. 21, oneembodiment of step 308 is illustrated wherein control circuit 68 isoperable to determine error states as one of high, low or normal. Forexample, referring to the pressure error (PE), control circuit 68 isoperable at step 308 to determine that the PE state is high if PE isgreater than a first pressure error threshold (PE threshold 1), the PEstate is low if PE is less than a second pressure error threshold (PEthreshold 2), and the PE state is normal if PE is between PE threshold 1and PE threshold 2. Error states for FE and SE are preferably determinedat step 308 in a manner identical to that illustrated with respect tothe pressure error state PE.

Referring again to FIG. 20, algorithm 300 continues from step 308 atstep 310 where control circuit 68 is operable to compare the errorstates of predefined cylinder combinations with a fault tree matrix.Referring to FIG. 22, an example of step 310 is illustrated, wherein,for example, control circuit 68 is operable to compare the PE state, FEstate, and SE state of cylinders 1, 2 and 3 with predetermined errorstates therefor to determine various faults. As shown in FIG. 22, forexample, normal PE, FE and SE states for cylinders 2 and 3 while the PEstate for cylinder 1 is low with the FE and SE states being highcorresponds to an over-fueling fault for cylinder 1. As another example,normal/low PE states for cylinders 1, 2 and 3 and high FE states forcylinders 1, 2 and 3 while the SE state for cylinders 1 and 2 is normalwith the SE state for cylinder 3 being high corresponds to acontinuously over-fueling fault for cylinder 3. Those skilled in the artwill recognize that other combinations of PE, FE and SE states forvarious cylinder combinations can be used to define other fuel systemfault, and that other such fault combinations are intended to fallwithin the scope of the present invention.

Referring again to FIG. 20, algorithm execution continues, in oneembodiment, from step 310 at step 314 where control circuit 68 isoperable to log appropriate faults as defined and determined at step310. Alternatively, algorithm 300 may include an optional step 312wherein control circuit 68 is operable to determine whether any of thefaults determined at step 310 occur some number, X, of consecutive timesthrough algorithm 300. If not, algorithm execution continues back tostep 304, and if, at step 312, control circuit 68 determines that anyfaults determined at step 310 have occurred X consecutive times, onlythen does algorithm execution continue to step 314 where appropriatefaults are logged within memory 75 of control circuit 68. In eithercase, step 314 loops back to step 304 for repeated execution ofalgorithm 300. In another alternative embodiment, algorithm 300 mayinclude optional step 316 wherein control circuit 68 is operable, afterlogging appropriate faults at step 314, to execute engine protectionand/or limp home algorithms as appropriate and as based on the severityof faults determined at step 310. Algorithm execution loops from step316 back to step 304 for continued execution of algorithm 300.

Referring now to FIG. 23, a plot of injector on-time, IOT, vs. time isshown illustrating an injector on-time signal 350 for one fuel injectionevent by a single fuel injector 60. Each of the fuel injectors carriedby engine 66 are responsive to similar injector on-time signals tosupply fuel to the engine 66. The injector on-time signal 350 willtypically include a so-called main-injection on-time 354, and mayfurther include any number of pre- or pilot-injection on-times 352 ₁–352_(j) and/or any number of post-injection on-times 356 ₁–356 _(k),wherein “j” and “k” may be any integers greater than or equal to zero.For example, in the simplest embodiment, j=k=0, and the injector on-timesignal 350 includes only the main-injection on-time 354. In anotherembodiment, j=0 and k=1, and the injector on-time signal 350 accordinglyincludes the main-injection on-time 354 and a post-injection on-time 356₁. In yet another embodiment, j=k=1, and the injector on-time signaltherefore includes a pre- or pilot-injection on-time 352 ₁, themain-injection on-time 354 and a post-injection on-time 356 ₁. Ingeneral, the injector on-time signal 350 may accordingly include themain-injection on-time 354, and any number of pre- or pilot-injectionon-times and/or any number of post-injection on-times.

Referring now to FIG. 24A, a plot of fuel pressure 400 within the fuelcollection unit; e.g., accumulator 56 (FIG. 1A), fuel rail 92 (FIG. 1B),fuel storage portion of fuel injector 60 (FIGS. 1A and 1B), etc., vs.time is shown. Fuel pressure waveform 400 includes periodic peaks 402and valleys 404 resulting from the cyclic operation of the fuel pump 54as described hereinabove. In the plot of fuel pressure 400 illustratedin FIG. 23, engine speed is at a low level, and differences in the peaks402 and valleys 404 of the fuel pressure waveform 400 are sufficientlyseparated so that no overlap exists between the pumping action of thefuel pump 54 and injection of fuel by any of the fuel injectors 60, evenin embodiments where the injector on-time signal, IOT, includes amain-injection on-time, and any number of pre- or pilot-injectionon-times and/or any number of post-injection on-times. Hereinafter, anysuch number of pre- or pilot-injection events and corresponding pre- orpilot-injection on-times and/or post-injection events and correspondingpost-injection on-times may be collectively referred to asauxiliary-injection events having corresponding auxiliary-injectionon-times.

Referring to FIG. 24B by contrast, another plot of fuel pressure 450within the fuel collection unit vs. time is shown, wherein fuel pressurewaveform 450 likewise includes periodic peaks 452 and valleys 454resulting from the cyclic operation of the fuel pump 54. In the plot offuel pressure 450 illustrated in FIG. 24, engine speed is at amoderate-to-high level, and the injector on-time signal, IOT, includes amain-injection on-time, and may include any number ofauxiliary-injection on-times. Under such conditions, the pumping actionof the fuel pump 54 may overlap fuel injection by the fuel injectors 60,as illustrated in FIG. 24 by the overlapping valleys 454 in the fuelpressure waveform 450, which results in corruption of the fuel pressuredifferential measurements describe hereinabove. Consequently, thiscondition causes inaccuracies in the injected fuel quantity estimationsdescribed herein when the injector on-time signals, IOT, include bothmain- and auxiliary-injection on-times, and which then leads tocylinder-to-cylinder and engine-to-engine post-injection fuelingvariations, cylinder-to-cylinder engine power output variations andnon-optimal emission control strategies in a closed-loop fueling controlsystem. It is therefore desirable to accurately estimate suchauxiliary-injected fuel quantities, and to minimize auxiliary-injectedfueling variations to improve the accuracy of injected fuel quantityestimates, and accordingly minimize cylinder-to-cylinder andengine-to-engine fueling and power variations, and improve emissioncontrol strategies.

Referring to FIG. 25, a plot of fuel pressure within the fuel collectionunit and fuel pump actuator current vs. time is shown illustrating atechnique for estimating auxiliary-injection fuel quantities andminimizing auxiliary-injected fueling variations arising from fuelpumping and fuel injection overlap conditions of the type illustratedand described with respect to FIG. 24. The technique illustrated in FIG.25 is applicable in systems including both main-injected andauxiliary-injected fueling events; e.g., wherein the injector on-timesignal, IOT, includes both main-injection and auxiliary-injectionon-times.

In such systems, accurate estimation of such auxiliary-injected fuelquantities and minimization of such auxiliary-injected fuelingvariations increases the accuracy of overall injected fuel quantityestimations using the techniques described hereinabove with respect toFIGS. 1–19.

In accordance with the technique illustrated in FIG. 25, the controlcircuit 68 is operable to selectively and momentarily disable operationof the fuel pump 54, and then to measure the fuel pressure in the fuelcollection unit just before and just after a fuel injection event of aselected fuel injector while no fuel pumping is occurring. Thisguarantees that the operation of the fuel pump 54 will not interferewith the isolated fuel injection event, and therefore will not corruptthe fuel pressure measurements for the selected fuel injector. Similarmeasurements are obtained for each of the fuel injectors, and the fuelpressure measurements for all of the fuel injectors are then used in aclosed-loop control system to adjust the on-times of one or more of thefuel injectors in a manner that minimizes auxiliary-injected fuelingvariations.

In FIG. 25, the fuel pressure within the fuel collection unit isillustrated by waveform 470, and includes a number of pulses 474, 476and 478 corresponding to periodic pressure increases in the fuelcollection unit resulting from the cyclic action of fuel pumping andinjection events. The fuel pump actuator current is illustrated bywaveform 490, and represents the operational status; e.g., enabled ordisabled, of the fuel pump 54. Those skilled in the art will recognizethat the response time of the fuel pump 54 to enablement and disablementthereof will typically vary depending upon the particular application,and that the timing of fuel pump disablement and enablement relative tofuel injection by the selected, e.g., Kth, fuel injector will likewisevary. In any case, it is desirable to disable the fuel pump 54 for asufficient period preceding fuel injection by the Kth fuel injector toinsure that the fuel pressure within the fuel collection unit stabilizesprior to fuel injection by the selected, e.g., Kth, fuel injector.

In the example illustrated in FIG. 25, for example, the fuel pump 54 isdisabled, as indicated by the fuel pump actuator current curve 490, at apoint “A” in time preceding fuel injection by the Kth fuel injector.Relative to the fuel collection unit pressure waveform 470, point “A”happens to coincide with a rising edge of the pressure pulse 476. Afterpressure pulse reached peak 472, the fuel collection unit pressurereturns to its pre-pump pressure value due to fuel injection by a fuelinjector preceding the Kth fuel injector in the fuel injection actuationorder. In the example illustrated in FIG. 25, the fuel pump 54thereafter continues to pump a residual amount of fuel represented byfuel pressure pulse 478, even though the fuel pump 54 is disabled asindicated by waveform 490. Thereafter, the fuel collection unit pressuredecreases, as a result of fuel injection by another fuel injectorpreceding the Kth fuel injector in the fuel injection actuation order,to fuel pressure level 480. At this point, the fuel pump 54 iscompletely disabled and inactive, and the fuel pressure level in thefuel collection unit remains at the fuel pressure level 480 until fuelinjection by the Kth fuel injector. The before-injection fuel pressurewithin the fuel collection unit prior to fuel injection by the Kthinjector, P_(B,K), may thus be measured at any time while the fuelpressure within the fuel collection unit remains at the substantiallyconstant level 480.

With the fuel pump 54 in a non-pumping, inactive state, no fuel ispumped by pump 54 to the fuel collection unit just prior to, during, andjust following fuel injection by the Kth fuel injector. Fuel injectionby the Kth fuel injector accordingly decreases the fuel pressure in thefuel collection unit from the substantially constant before-injectionpressure level 480 to the substantially constant after-injectionpressure level 482. The after-injection fuel pressure within the fuelcollection unit after fuel injection by the Kth injector, P_(A, K), maythus be measured at any time while the fuel pressure within the fuelcollection unit remains at the substantially constant level 482.

The fuel pump 54 is actuated to resume the pumping of fuel followingfuel injection by the Kth fuel injector. Again, the response time of thefuel pump 54 to enablement thereof will typically vary depending uponthe particular application, and the timing of fuel pump enablementrelative to fuel injection by the Kth fuel injector will likewise vary.It is desirable to enable the fuel pump 54 to resume pumping of fuel tothe fuel collection unit as soon as practicable following fuel injectionby the Kth fuel injector while also avoiding any pumping by fuel pump 54during the period just preceding and just after fuel injection by theKth injector. In the example illustrated in FIG. 25, the fuel pump 54 isactually enabled at a point “B” in time preceding fuel injection by theKth fuel injector, but due to the delayed response time of fuel pump 54,fuel pumping thereby does not resume until well after fuel injection bythe Kth fuel injector as indicated by the rising edge 484 of the fuelcollection unit fuel pressure waveform 470.

It bears pointing out that the concepts just described with respect toFIGS. 23–25, and that will be further described hereinafter with respectto FIGS. 26–32, have been illustrated in FIGS. 23–25 as they relate toone specific fuel pump control configuration. Although the separationbetween fuel pumping and fuel injection events under certain operatingconditions can easily be discerned in fuel pressure waveform illustratedin FIG. 24A, those skilled in the art will recognize that suchseparation may not be visible with other fuel pump controlconfigurations; e.g., multiple pumping events per fuel injector,asynchronous fuel pumping, and the like. It will be understood, however,that the concepts described herein with respect to FIGS. 23–32 areapplicable to any fuel pump control configuration, and any suchalternate fuel pump control configurations are intended to fall withinthe scope of the appended claims.

Referring now to FIG. 26, a flowchart is shown illustrating oneembodiment of a software algorithm 500 for minimizing post-injectedfueling variations in engine 66 using the techniques illustrated anddescribed with respect to FIG. 25. Algorithm 500 may be stored in memory75 of control circuit 68, and is in any case executed by control circuit68. Algorithm 500 begins at step 502 where control circuit 68 isoperable to set a numerical identifier, “K”, equal to a selected one of“N” fuel injectors, wherein K<N. Thereafter, control circuit 68 isoperable to disable operation of the fuel pump 54, by appropriatelycontrolling the fuel pump actuator 53, so as to insure no pumping offuel for a period prior to injection of fuel by the Kth fuel injector 60as just described with respect to FIG. 25.

Following step 504, control circuit 68 is operable at step 506 tomeasure the pressure, P_(B, K), in the fuel collection unit after thefuel pressure within the fuel collection unit has stabilized followingdisablement of the fuel pump 54 and prior to injection of fuel by theKth fuel injector; e.g., anywhere along the substantially constant fuelpressure line 480 illustrated in FIG. 25. Control circuit 68 is operableto execute step 506 by monitoring the pressure in the fuel collectionunit; e.g., via pressure sensor 70 (FIG. 1A), pressure sensor 96 (FIG.1B) or pressure sensor 100 (FIG. 1B), and capturing P_(B, K) at anappropriate time following disablement of the fuel pump 54; e.g., atpoint “A” as just described. Thereafter at step 508, control circuit 68to measure the pressure, P_(A, K), in the fuel collection unit followinginjection of fuel by the Kth fuel injector and prior to resumed fuelpumping by fuel pump 54; e.g., anywhere along the substantially constantfuel pressure line 482. Control circuit 68 is operable to execute step508 by monitoring the pressure in the fuel collection and capturingP_(A, K) at an appropriate time following fuel injection by the Kth fuelinjector as just described

Following step 508, algorithm execution advances to step 510 wherecontrol circuit 68 is operable to enable operation of the fuel pump 54to resume fuel pumping following fuel injection by the Kth fuel injectorand measurement of P_(A, K). As described hereinabove with respect toFIG. 25, control circuit 68 may be operable in some embodiments toactually enable the fuel pump 54 before fuel injection by the Kth fuelinjector wherein, due to delays in the response to fuel pump 54, itresumes pumping after fuel injection by the Kth fuel injector, and insuch embodiments steps 508 and 510 may accordingly be interchanged intheir sequence of execution. In any case, control circuit 68 is operableto enable operation of the fuel pump 54 at step 510 by appropriatelycontrolling the fuel pump actuator 53. Thereafter at step 512, controlcircuit 68 is operable to compute a pressure differential, ΔP_(K),according to the equation ΔP_(K)=P_(B, K)−P_(A, K). Thereafter at step514, control circuit 68 is operable to determine whether ΔP_(K) valueshave been obtained for all “N” fuel injectors. If not, algorithmexecution advances to step 516 to set the numerical identifier “K” to anew or different one of the “N” fuel injectors, wherein K<N, and todelay for a period T at step 518 before looping back to step 504. If, onthe other hand, control circuit 68 determines at step 514 that ΔP_(K)values have been obtained for each of the “N” fuel injectors orcylinders, algorithm execution advances to step 520 where controlcircuit 68 is operable to adjust the post-injection on-time portions ofone or more of the injector on-time signals to minimize differencesbetween the “N” ΔP_(K) values. In one embodiment, control circuit 68 isoperable to execute step 520 according to a conventional closed-loopcontrol strategy that generates error values between the various ΔP_(K)values, and uses these error values to drive adjust the post-injectionon-time portions of one or more of the injector on-time signals in amanner that drives the error values to zero. Alternatively, controlcircuit 68 may be configured to implement other known closed-loop,open-loop or other known control strategies to adjust the post-injectionon-time portions of one or more of the injector on-time signals in amanner that minimizes differences between the “N” ΔP_(K) values.

From the foregoing, it should be apparent that algorithm 500 illustratedin FIG. 26 is operable to adjust one or more of the injector on-timesignals, IOT, in a manner that minimizes variations in the pressuredifferentials across injection events of each of the “N” fuel injectors.This approach ignores any variations in the main-injection on-times, aswell as in any pilot-injection on-times, of the various injector on-timesignals, and assumes that any such variations are insignificant. In anycase, algorithm 500 is operable to minimize cylinder-to-cylinderpost-injection fueling variations within engine 66 when such variationsare due to differences in post-injected fueling quantities.

Those skilled in the art will recognize that while algorithm 500 isillustrated and described as being operable to minimize post-injectionfueling variations, algorithm 500 may be modified to alternativelyminimize pre- or pilot-injection fueling variations. For example, step520 may be modified so that the control circuit 68 is operable to adjustpilot-injection on-times of one or more fuel injectors to minimizedifferences between corresponding ΔP_(K) values. Such a modificationwould be a mechanical step for a skilled artisan, and control circuit 68may be configured to implement any known closed-loop, open-loop or otherknown control strategies to adjust the pilot-injection on-time portionsof one or more of the injector on-time signals in a manner thatminimizes differences between the “N” ΔP_(K) values. This approachignores any variations in the main-injection on-times, as well as in anypost-injection on-times, of the various injector on-time signals, andassumes that any such variations are insignificant. In any case,algorithm 500, modified as just described, is operable to minimizecylinder-to-cylinder pilot-injection fueling variations within engine 66when such variations are due to differences in pilot-injected fuelquantities.

Referring now to FIG. 27, a flowchart is shown illustrating an alternateembodiment of a software algorithm 550 for minimizing post-injectionfueling variations using the techniques illustrated and described withrespect to FIG. 25. As with algorithm 500, algorithm 550 may be storedin memory 75 of control circuit 68, and is in any case executed bycontrol circuit 68. Algorithm 550 shares many steps in common withalgorithm 500, and such common steps are accordingly identified bycommon reference numbers in the illustration of algorithm 550 in FIG.27. For example, steps 502–510 and 516–518 of algorithm 550 areidentical to steps 502–510 and 516–518 of algorithm 500, and adescription of the operation of such steps will not be repeated here forbrevity. With regard to steps 502–510, algorithm 550 includes anadditional step 552 that is executed in parallel with steps 506 and 508.At step 552, control circuit 68 is operable to determine the on-time,IOT_(K), of the Kth fuel injector during the fuel injection eventwherein the fuel pump 54 is disabled as illustrated and described withrespect to FIG. 25. In one embodiment, control circuit 68 is operable tocontrol the injector on-time signal as described hereinabove andparticularly with respect to FIG. 4, and in this embodiment controlcircuit 68 thus has knowledge of IOT_(K). In embodiments wherein controlcircuit 68 does not control the injector on-time signal, IOT, controlcircuit 68 may be configured in a known manner to monitor enablement anddisablement of the Kth fuel injector, and to determine IOT_(K) based onthe time difference between enablement and disablement of the Kth fuelinjector.

Execution of algorithm 550 advances from step 510 to step 554 wherecontrol circuit 68 is operable to estimate a total injected fuelquantity, TIF_(K), corresponding to the total amount of fuel injected bythe Kth fuel injector while the fuel pump 54 is disabled as describedhereinabove with respect to FIG. 25. In one embodiment, control circuit68 is operable at step 554 to estimate TIF_(K) as a function ofP_(B, K), P_(A, K), the bulk modulus value, BM, the injector on-time,IOT_(K), and the engine temperature value, ET, using any of thetechniques described hereinabove with respect to FIGS. 1–19 as theyrelate to determination of the injected fuel estimate, IFE, produced bythe fuel injection quantity estimation logic block first illustrated inFIG. 4. For example, control circuit 68 is operable in this embodimentto estimate a total discharged fuel estimate, TDFE_(K), as a function ofP_(B, K), P_(A, K) and the bulk modulus value, BM, or alternatively onlyas a function only of P_(B, K) and P_(A, K), to estimate a control flowleakage value, CFLE_(K), as a function of P_(B, K), P_(A, K) andIOT_(K), to optionally estimate a parasitic flow leakage value,PFLE_(K), as a function of P_(B, K), P_(A, K) and the engine temperaturevalue, ET, wherein ET may be the fuel temperature, FT, or the enginecoolant temperature, CT, and to compute TIF_(K) according to theequation TIF_(K)=TFD_(K)−CFLE_(K) or optionally according to theequation TIF_(K)=TFD_(K)−CFLE_(K)−PFLE_(K), all as described hereinabovewith respect to FIGS. 5–19. Alternatively, control circuit 68 may beoperable at step 554 to estimate TIF_(K) in accordance with any knowntechnique for estimating the total fuel injected by the Kth fuelinjector while the fuel pump 54 is disabled as described hereinabovewith respect to FIG. 25.

In any case execution of algorithm 550 advances from step 554 to step556 where control circuit 68 is operable at step 556 to estimate apost-injection fuel quantity, PIF_(K), corresponding to thepost-injection fuel quantity injected by the Kth fuel injector betweensteps 506 and 508 of algorithm 550. In embodiments where the injectoron-time signals include post-injection on-times but do not include anypilot-injection on-times, control circuit 68 is operable at step 556 toestimate PIF_(K) as the total injected fuel quantity, TIF_(K), estimatedat step 554 less a commanded main fuel injection quantity, CMIF_(K), forthe Kth fuel injector, wherein CMIF_(K) corresponds to a main-injectionfuel quantity portion of the desired fuel injection quantity, DF,illustrated and described hereinabove with respect to FIG. 4.Conversely, in embodiments where the injector on-time signals includeboth post-injection and pilot-injection on-times, control circuit 68 isoperable at step 556 to estimate PIF_(K) as the total injected fuelquantity, TIF_(K), less the sum of the commanded main fuel injectionquantity, CMIF_(K), and a commanded pilot-injection quantity, CPLIF_(K),wherein CPLIF_(K) corresponds to a pilot-injection fuel quantity portionof the desired fuel injection quantity, DF, illustrated and describedhereinabove with respect to FIG. 4. In any case, control circuit 68 isoperable thereafter at step 558 to determine whether PIF_(K) values havebeen determined for all “N” fuel injector or cylinders. If not,algorithm execution loops back to step 504 through steps 516 and 518.

If, on the other hand, control circuit 68 determines at step 558 thatPIF_(K) values have been obtained for each of the “N” fuel injectors orcylinders, algorithm execution advances to step 560 where controlcircuit 68 is operable to adjust the post-injection on-time portions ofone or more of the injector on-time signals to minimize differencesbetween the “N” post-injection fuel quantity values PIF_(K). In oneembodiment, control circuit 68 is operable to execute step 560 accordingto a conventional closed-loop control strategy that generates errorvalues between the various PIF_(K) values, and uses these error valuesto adjust the post-injection on-time portions of one or more of theinjector on-time signals in a manner that drives these error values tozero. Alternatively, control circuit 68 may be configured to implementother known closed-loop, open-loop or other known control strategies toadjust the post-injection on-time portions of one or more of theinjector on-time signals in a manner that minimizes differences betweenthe “N” PIF_(K) values.

From the foregoing, it should be apparent that algorithm 550 illustratedin FIG. 27 is operable to adjust one or more of the injector on-timesignals, IOT, in a manner that minimizes variations in the estimatedpost-injection fuel quantity values of each of the “N” fuel injectors.This approach ignores any variations in the main-injection on-timeportions, as well as in any pilot-injection on-times, of the variousinjector on-time signals, and assumes that any such variations areinsignificant. In any case, algorithm 550 is operable to minimizecylinder-to-cylinder post-injection fueling variations within engine 66as well as engine-to-engine post-injection fueling variations when suchvariations are due to differences in post-injected fuel quantities.

Those skilled in the art will recognize that while algorithm 550 isillustrated and described as being operable to minimize post-injectionfueling variations, algorithm 550 may be modified to alternativelyminimize pre- or pilot-injection fueling variations. For example, incases where the injector on-time signals include pilot-injectionon-times but not post-injection on-times, step 556 may be modified toestimate a pilot-injected fuel, PLIF_(K), as a difference betweenTIF_(K) and CMIF_(K). In cases where the injector on-time signalsinclude both a pilot-injection on-time and a post-injection on-time,step 556 may be modified to estimate a pilot-injected fuel, PLIF_(K) asa difference between the estimated total injected fuel, TIF_(K), and thesum of the commanded main-injected fuel, CMIF_(K), and a commandedpost-injected fuel, CPIF_(K), wherein CPIF_(K) corresponds to apost-injection fuel quantity portion of the desired fuel injectionquantity, DF, illustrated and described hereinabove with respect to FIG.4. In either case, step 560 may be modified so that the control circuit68 is operable to adjust pilot-injection on-times of one or more fuelinjectors to minimize differences between corresponding PLIF_(K) values.Such modifications would be a mechanical step for a skilled artisan, andcontrol circuit 68 may be configured to implement any known closed-loop,open-loop or other known control strategies to adjust thepilot-injection on-time portions of one or more of the injector on-timesignals in a manner that minimizes differences between the “N” PILF_(K)values. This approach ignores any variations in the main-injectionon-time portions, as well as in any post-injection on-times, of theVarious injector on-time signals, and assumes that any such variationsare insignificant. In any case, this embodiment of algorithm 550 isoperable to minimize cylinder-to-cylinder pilot-injection fuelingvariations within engine 66 as well as engine-to-engine pilot-injectionfueling variations when such variations are due to differences inpilot-injected fuel quantities.

In another alternate embodiment, control computer 68 is configured tocontrol operation of the fuel pump 54 and to control the injectoron-time signal, IOT, in a manner that provides for the generation of amain-injected fuel quantity estimation model, a post-injected fuelquantity estimation model and a pilot-injected fuel quantity estimationmodel. These models may then be used under any engine and fuel systemoperating conditions to estimate post-injected and/or pilot-injectedfuel quantities for any of the various fuel injectors carried by engine66, and such estimates may then be used to minimize post- orpilot-injected fueling variations in any one or more of the various fuelinjectors carried by engine 66. In one embodiment, such models may begenerated, in a manner to be described hereinafter, at the engineproduction facility, and thereafter used during operation of the engineto estimate post-injected and/or pilot-injected fuel quantities for anyone or more of the various fuel injectors carried by engine 66. In thisembodiment, the models may be periodically or otherwise updated at aservice facility by operating the engine in a manner to be describedhereinafter. In an alternative embodiment, the models may be continuallyor periodically updated during operation of the engine in a manner to bedescribed hereinafter.

Referring now to FIG. 28, a flowchart is shown illustrating oneembodiment of a software algorithm 600 for generating a main-injectedfuel quantity model for any Kth one of the “N” fuel injectors, whereinsuch a main-injected fuel quantity model may be used under any engineand fuel system operating conditions to estimate main-injected fuelquantities for the Kth injector. Algorithm 600 may be stored in memory75, and is in any case executed by control circuit 68. Algorithm 600shares many steps in common with each of algorithms 500 and 550, andsuch common steps are accordingly identified with common referencenumbers in the illustration of algorithm 600 in FIG. 28. For example,steps 502–510 of algorithm 600 are identical to steps 502–510 ofalgorithms 500 and 550, and step 552 of algorithm 600 is identical tostep 552 of algorithm 550, and a description of the operation of suchsteps will not be repeated here for brevity. In any case, algorithm 600includes an additional step 602 between steps 504 and 506 whereincontrol circuit 68 is operable to disable any pilot- and post-injectionfueling for the Kth injector only for the next fueling event. Controlcircuit 68 is operable to execute step 602 by modifying the injectoron-time signal, IOT, to include only the main-injection on-time portionthereof and to omit from IOT any pilot-injection on-time as well as anypost-injection on-time. This insures that subsequent fuel injection bythe Kth fuel injector will include only a main-injection quantitywithout any pilot-injected fuel quantity or post-injected fuel quantityto thereby appropriately allow for estimation only of the main-injectedfuel quantity injected by the Kth fuel injector. It is desirable,although not required, at step 602 to additionally increase themain-injection on-time portion of the injector on-time signal, IOT_(K),so that the total quantity of injected fuel after disabling anypilot-injection or post-injection on-time is equal to what the totalquantity of injected fuel would have been had the pilot-injection and/orpost-injection on-times not been disabled. In embodiments wherein themain-injection fuel quantity model is continually or periodicallyupdated during normal operation of the engine 66, increasing themain-injection on-time of the injector on-time signal, IOT_(K), as justdescribed will effectively maintain engine fueling levels near theirrequested fueling levels so that the engine operator generally will notnotice any decrease in engine output power resulting from disablement ofthe pilot-injection or post-injection on-times.

Step 510 of algorithm 600 advances to step 604 where control circuit 68is operable to estimate a main-injected fuel quantity value, MIF_(K),corresponding to the total quantity of fuel injected by the Kth fuelinjector between steps 506 and 508 of algorithm 570. In one embodiment,step 604 may accordingly be identical to step 554 of algorithm 550 (FIG.27) since the main-injected fuel quantity, MIF_(K) in this casecorresponds to the total amount of fuel injected by the Kth fuelinjector while the fuel pump 54 is disabled as described hereinabovewith respect to FIG. 25, and while any pilot-injection and/orpost-injection on-times of the injector on-time signal, IOT_(K), arelikewise disabled. Control circuit 68 is thus operable at step 604 inthis embodiment to estimate MIF_(K) as a function of P_(B, K), P_(A, K),the bulk modulus value, BM, the injector on-time, IOT_(K), and theengine temperature value, ET, using the techniques described hereinabovewith respect to FIGS. 1–19 as they relate to determination of theinjected fuel estimate, IFE, produced by the fuel injection quantityestimation logic block first illustrated in FIG. 4. For example, controlcircuit 68 is operable in this embodiment to estimate a total dischargedfuel estimate, TDFE_(K), as a function of P_(B, K), P_(A, K) and thebulk modulus value, BM, or alternatively only as a function only ofP_(B, K) and P_(A, K), to estimate a control flow leakage value,CFLE_(K), as a function of P_(B, K), P_(A, K) and IOT_(K), to optionallyestimate a parasitic flow leakage value, PFLE_(K), as a function ofP_(B, K), P_(A, K) and the engine temperature value, ET, wherein ET maybe the fuel temperature, FT, or the engine coolant temperature, CT, andto compute MIF_(K) according to the equation MIF_(K)=TDFE_(K)−CFLE_(K)or optionally according to the equationMIF_(K)=TDFE_(K)−CFLE_(K)−PFLE_(K), all as described hereinabove withrespect to FIGS. 5–19. Alternatively, control circuit 68 may be operableat step 604 to estimate MIF_(K) in accordance with any known techniquefor estimating the total fuel injected by the Kth fuel injector whilethe fuel pump 54 is disabled as described hereinabove with respect toFIG. 25 and while any pilot-injection and/or post-injection on-times ofthe injector on-time signal, IOT_(K) are also disabled.

Following step 604, algorithm execution advances to step 606 wherecontrol circuit 68 is operable to determine whether MIF_(K) values havebeen determined for “J” different engine operating conditions, wherein“J” may be any integer. It is desirable for the “J” different engineoperating conditions to cover wide ranges of fuel pressures within thefuel collection unit and injected fuel quantities. In one embodiment,J=20, although other values of “J” may be used. In any case, if controlcircuit 68 determines at step 606 that MIF_(K) values have not beendetermined for “J” different engine operating conditions, algorithmexecution advances to step 608 where control circuit 68 is operableeither to modify engine operating conditions, or to delay furtherexecution of algorithm 600 until engine operating conditions have beensufficiently modified as a result of changes in the engine or vehicleoperating environment and/or changes in driver behavior. In either case,algorithm execution loops from step 608 back to step 504.

If, on the other hand, control circuit 68 determines at step 606 thatMIF_(K) values have been determined for “J” different engine operatingconditions, algorithm execution advances to step 610 where controlcircuit 68 is operable to determine the MIF_(K) estimation equation ormodel, EMIF_(K), as a function of the “J” different MIF_(K) values. Inone embodiment, control circuit 68 is operable to execute step 610 bycomputing coefficients “a”, “b” and “c” of an EMIF_(K) model of the formEMIF_(K)=a+b*P_(AVE,K)+c*IOT_(K)*SQRT(P_(AVE,K)) applying a knownregression technique; e.g., least squares, to the “J” different MIF_(K)values, wherein P_(AVE,K)=[(P_(B, K)+P_(A, K))/2] and represents anaverage pressure in the fuel collection unit during fuel injection bythe Kth fuel injector. Alternatively, control circuit 68 may be operableat step 610 to generate the EMIF_(K) model, as a function of P_(B, K),P_(A, K) and IOT_(K) using other known curve fitting techniques. In anycase algorithm execution advances from step 610 to step 612 wherealgorithm execution returns to its calling routine, or alternatively tostep 502 for continual execution of algorithm 600.

Algorithm 600 may be configured to continually run in the background,independently of any other algorithm described herein to therebycontinually update the main-injected fuel quantity model, EMIF_(K), forthe Kth fuel injector. Under experimental operating conditions, it wasdetermined that control circuit 68 was operable to update themain-injected fuel quantity model, EMIF_(K), approximately once everytwo hours under typical engine operating conditions. It will beunderstood, however, that control computer 68 may be operable to updatethe main-injected fuel quantity model, EMIF_(K), more or less quickly,and that the actual time between model updates will depend largely uponhow quickly or slowly engine operating conditions are changedsufficiently so that “J” different MIF_(K) values may be obtained.Alternatively, algorithm 600 may be configured to run periodically inthe background, independently of any other algorithm described herein,to thereby periodically update the main-injected fuel quantity model,EMIF_(K), for the Kth fuel injector. Alternatively still, algorithm 600may be configured to be executed only by a qualified service technician.In this embodiment algorithm 600 may be executed at the engineproduction facility to generate the main-injection fuel quantity modelthat will be used thereafter during engine operation to estimatemain-injected fuel quantities. Algorithm 600 may additionally oralternatively be executed periodically or otherwise at an engine servicefacility to update the main-injection fuel quantity model. In any case,it will further be understood that while algorithm 600 is illustrated asgenerating a main-injected fuel quantity model, EMIF_(K), for only theKth fuel injector, control circuit 68 is operable to execute identicalversions of algorithm 600 for each of the remaining “N” fuel injectorscarried by engine 66 so that main-injected fuel quantity modelsaccordingly exist for each of the “N” fuel injectors. The resulting “N”main-injected fuel quantity models may be used under any engineoperating conditions to estimate main-injected fuel quantities for eachof the “N” fuel injectors. It will be understood that the accuracy ofany of the main-injected fuel quantity models is generally independentof, and not affected by, the structural and/or operational configurationof the one or more fuel pumps.

Referring now to FIGS. 29A and 29B, a flowchart is shown illustratingone embodiment of a software algorithm 650 for generating apost-injected fuel quantity model for any Kth one of the “N” fuelinjectors, wherein such a post-injected fuel quantity model may be usedunder any engine and fuel system operating conditions to estimatepost-injected fuel quantities for the Kth injector. Algorithm 650 may bestored in memory 75, and is in any case executed by control circuit 68.Algorithm 650 shares many steps in common with each of algorithms 500and 550, and such common steps are accordingly identified with commonreference numbers in the illustration of algorithm 650 in FIG. . 29. Forexample, steps 502–510 of algorithm 650 are identical to steps 502–510of algorithms 500 and 550, and steps 552 and 554 of algorithm 650 areidentical to steps 552 and 554 of algorithm 550, and a description ofthe operation of such steps will not be repeated here for brevity. Inany case, algorithm 650 may include an additional step 652 between steps504 and 506 wherein control circuit 68 is operable to disable anypilot-injection fueling for the Kth injector only for the next fuelingevent in embodiments where the injector on-time signal, IOT_(K),includes pilot-injection, main-injection and post-injection on-times.Control circuit 68 is operable to execute step 652 by modifying theinjector on-time signal, IOT, to include only the main-injection andpost-injection on-times thereof, and to omit from IOT anypilot-injection on-time. This insures that subsequent fuel injection bythe Kth fuel injector will include only the main-injection andpost-injection fuel quantities without any pilot-injected fuel quantityto thereby appropriately allow for estimation of a total injected fuelat step 554 of algorithm 650 that includes only the main-injected fuelquantity and the post-injected fuel quantity injected by the Kth fuelinjector. It is desirable, although not required, at step 652 toadditionally increase the main-injection on-time portion of the injectoron-time signal, IOT_(K), so that the total quantity of injected fuelafter disabling the pilot-injection on-time is equal to what the totalquantity of injected fuel would have been had the pilot-injectionon-time not been disabled. In embodiments wherein the post-injectionfuel quantity model is continually or periodically updated during normaloperation of the engine 66, increasing the main-injection on-time of theinjector on-time signal, IOT_(K), as just described will effectivelymaintain engine fueling levels near their requested fueling levels sothat the engine operator generally will not notice any decrease inengine output power resulting from disablement of the pilot-injectionon-time. In embodiments where the injector on-time signal, IOT_(K),includes only main-injection and post-injection on-times, step 652 maybe omitted.

Step 554 of algorithm 650 advances to step 654 where control circuit 68is operable to compute an average pressure, P_(AVE,K), in the fuelcollection unit during fuel injection by the Kth injector; e.g., betweensteps 506 and 508 of algorithm 650, according to the equationP_(AVE,K)=[(P_(B, K)+P_(A, K))/2]. Thereafter at step 656, controlcircuit 68 is operable to estimate the main-injected fuel quantityportion of the total injected fuel quantity, TIF_(K), determined at step554 using the main-injected fuel quantity model generated by algorithm600 of FIG. 28. Control circuit 68 is thus operable at step 656 toestimate the main-injected fuel quantity, EMIF_(K), as a function ofP_(AVE,K) and IOT_(K) according to the equationEMIF_(K)=a+b*P_(AVE,K)+c*IOT_(K)*SQRT(P_(AVE,K)). Thereafter at step658, control circuit 68 is operable to estimate the post-injected fuelquantity value, PIF_(K), as the difference between the total injectedfuel quantity, TIF_(K), estimated at step 554 and the main-injected fuelquantity, EMIF_(K), estimated at step 656, according to the equationPIF_(K)=TIF_(K)−EMIF_(K).

Following step 658, algorithm execution advances to step 660 wherecontrol circuit 68 is operable to determine whether PIF_(K) values havebeen determined for “G” different engine operating conditions, wherein“G” may be any integer. It is desirable for the “G” different engineoperating conditions to cover a wide range of fuel pressures within thefuel collection unit, and in one embodiment, G=10, although other valuesof “G” may be used. In any case, if control circuit 68 determines atstep 660 that PIF_(K)values have not been determined for “G” differentengine operating conditions, algorithm execution advances to step 662where control circuit 68 is operable either to modify engine operatingconditions, or to delay further execution of algorithm 650 until engineoperating conditions have been sufficiently modified as a result ofchanges in the engine or vehicle operating environment and/or changes indriver behavior. In either case, algorithm execution loops from step 662back to step 504.

If, on the other hand, control circuit 68 determines at step 660 thatPIF_(K) values have been determined for “G” different engine operatingconditions, algorithm execution advances to step 664 where controlcircuit 68 is operable to determine the PIF_(K) estimation equation ormodel, EPIF_(K), as a function of the “G” different PIF_(K) values. Inone embodiment, control circuit 68 is operable to execute step 664 bycomputing coefficients “d”, “e” and “f” of an EPIF_(K) model of the formEPIF_(K)=d+e*P_(AVE,K)+f*IOT_(K)*SQRT(P_(AVE,K)) applying a knownregression technique; e.g., least squares, to the “G” different PIF_(K)values, wherein P_(AVE,K)=[(P_(B, K)+P_(A, K))/2] and represents anaverage, pressure in the fuel collection unit during fuel injection bythe Kth fuel injector. Alternatively, control circuit 68 may be operableat step 664 to generate the EPIF_(K) model, as a function of P_(B, K),P_(A, K) and IOT_(K) using other known curve fitting techniques. In anycase algorithm execution advances from step 664 to step 666 wherealgorithm execution returns to its calling routine, or alternatively tostep 502 for continual execution of algorithm 650.

Algorithm 650 may be configured to continually run in the background,independently of any other algorithm described herein to therebycontinually update the post-injected fuel quantity model, EPIF_(K), forthe Kth fuel injector. Under experimental operating conditions, it wasdetermined that control circuit 68 was operable to update thepost-injected fuel quantity model, EPIF_(K), approximately once everyhour under typical engine operating conditions. It will be understood,however, that control computer 68 may be operable to update thepost-injected fuel quantity model, EPIF_(K), more or less quickly, andthat the actual time between model updates will depend largely upon howquickly or slowly engine operating conditions are changed sufficientlyso that “G” different PIF_(K) values may be obtained. Alternatively,algorithm 650 may be configured to run periodically in the background,independently of any other algorithm described herein, to therebyperiodically update the post-injected fuel quantity model, EPIF_(K), forthe Kth fuel injector. Alternatively still, algorithm 650 may beconfigured to be executed only by a qualified service technician. Inthis embodiment algorithm 650 may be executed at the engine productionfacility to generate the post-injection fuel quantity model that will beused thereafter during engine operation to estimate post-injected fuelquantities. Algorithm 650 may additionally or alternatively be executedperiodically or otherwise at an engine service facility to update thepost-injection fuel quantity model. In any case, it will further beunderstood that while algorithm 650 is illustrated as generating apost-injected fuel quantity model, EPIF_(K), for only the Kth fuelinjector, control circuit 68 is operable to execute identical versionsof algorithm 650 for each of the remaining “N” fuel injectors carried byengine 66 so that post-injected fuel quantity models accordingly existfor each of the “N” fuel injectors. The resulting “N” post-injected fuelquantity models may be used under any engine operating conditions toestimate post-injected fuel quantities for each of the “N” fuelinjectors. It will be understood that the accuracy of any of thepost-injected fuel quantity models is generally independent of, and notaffected by, the structural and/or operational configuration of the oneor more fuel pumps.

Referring now to FIG. 30, is a flowchart is shown illustrating anotheralternate embodiment of a software algorithm 670 for minimizingpost-injected fueling variations using the post-injected fuel quantitymodel generated by algorithm 650 of FIGS. 29A and 29B. Algorithm 670 maybe stored in memory 75, and is in any case executed by control circuit68. Algorithm 670 begins at step 672 where control circuit 68 isoperable to set “K” equal to a selected one of the number, N, of fuelinjectors carried by engine 66. Thereafter at step 674, control circuit68 is operable to determine an average pressure, P_(AVE, K), in the fuelcollection unit during fuel injection by the Kth fuel injector. In oneembodiment, control circuit 68 is operable to execute step 674 bysampling the fuel pressure in the fuel collection unit, via any of thetechniques described hereinabove, just prior to fuel injection by theKth fuel injector to determine a before-injection fuel pressure,FP_(B, K), and just after fuel injection by the Kth fuel injector todetermine an after-injection fuel pressure, FP_(A, K), as illustratedand described hereinabove with respect to FIG. 6, and determiningP_(AVE,K) as an algebraic average of the two; e.g.,P_(AVE,K)=[(FP_(B, K)+FP_(A, K))/2]. Alternatively, control circuit 68may be operable at step 674 to determine an average fuel pressure in thefuel collection unit during a fuel injection event by the Kth fuelinjector using other known signal averaging techniques. In any case,control circuit 68 is operable at step 676 to determine the injectoron-time, IOT_(K), during fuel injection by the Kth fuel injector asdescribed hereinabove.

Following steps 674 and 676, control circuit 68 is operable at step 678to estimate the quantity of post-injected fuel just injected by the Kthfuel injector using the post-injected fuel quantity model generated byalgorithm 650 of FIGS. 29A and 29B; e.g.,EPIF_(K)=d+e*P_(AVE,K)+f*IOT_(K)*SQRT(P_(AVE,K)). Thereafter at step680, control circuit 68 is operable to determine for the Kth fuelinjector a post-injected fueling error, PIFE_(K), as the estimatedpost-injected fuel quantity, EPIF_(K), less a commanded post-injectedfuel quantity value for the Kth fuel injector, CPIF_(K), whereinCPIF_(K) corresponds to a post-injection fuel quantity portion of thedesired fuel injection quantity, DF, illustrated and describedhereinabove with respect to FIG. 4.

Thereafter at step 682, control circuit 68 is operable to adjust thepost-injection on-time of the injector on-time signal, IOT_(K), tominimize the post-injected fuel quantity error PIFE_(K). In oneembodiment, control circuit 68 is operable to execute steps 680 and 682according to a conventional closed-loop control strategy that generatesthe post-injection fuel quantity error value, PIFE_(K), and uses thiserror value to adjust the post-injection on-time of the injector on-timesignal, IOT_(K), in a manner that drives the error value to zero.Alternatively, control circuit 68 may be configured to implement otherknown closed-loop, open-loop or other known control strategies to adjustthe post-injection on-time of the injector on-time signal in a mannerthat minimizes the post-injection fuel quantity error value, PIFE_(K).

From the foregoing, it should be apparent that algorithm 670 illustratedin FIG. 30 is operable to adjust the injector on-time signal, IOT_(K),for the Kth fuel injector in a manner that minimizes the post-injectionfuel quantity error, PIFE_(K), between the estimated post-injection fuelquantity value, EPIF_(K), and the commanded post-injection fuel quantityvalue, CPIF_(K). The estimated post-injection quantity value, EPIF_(K),is estimated according to the post-injected fuel quantity model for theKth fuel injector, which is based, in part, on a main-injected fuelquantity estimation model. It will be understood that an identicalversion of algorithm 670 is executed for each of the “N” fuel injectorscarried by engine 66 to thereby minimize the post-injection fuelquantity errors between the estimated post-injection fuel quantityvalues, EPIF, and the commanded post-injection fuel quantity values,CPIF for each of the “N” fuel injectors. This approach accounts for anyvariations in the main-injection on-times of the various injectoron-time signals, and algorithm 670 is accordingly operable to minimizecylinder-to-cylinder post- and main-injection fueling variations withinengine 66 as well as engine-to-engine post- and main-injection fuelingvariations.

Referring now to FIGS. 31A and 31B, a flowchart is shown illustratingone embodiment of a software algorithm 700 for generating apilot-injected fuel quantity model for any Kth one of the “N” fuelinjectors, wherein such a pilot-injected fuel quantity model may be usedunder any engine and fuel system operating conditions to estimatepilot-injected fuel quantities for the Kth injector. Algorithm 700 maybe stored in memory 75, and is in any case executed by control circuit68. Algorithm 700 shares many steps in common with each of algorithms500 and 550, and such common steps are accordingly identified withcommon reference numbers in the illustration of algorithm 700 in FIGS.31A and 31B. For example, steps 502–510 of algorithm 700 are identicalto steps 502–510 of algorithms 500 and 550, and steps 552 and 554 of salgorithm 700 are identical to steps 552 and 554 of algorithm 550, and adescription of the operation of such steps will not be repeated here forbrevity. In any case, algorithm 700 may include an additional step 702between steps 504 and 506 wherein control circuit 68 is operable todisable any post-injection fueling for the Kth injector only for thenext fueling event. Control circuit 68 is operable to execute step 702by modifying the injector on-time signal, IOT, to include only themain-injection and pilot-injection on-times thereof, and to omit fromIOT any post-injection on-time. This insures that subsequent fuelinjection by the Kth fuel injector will include only the main-injectionand pilot-injection fuel quantities without any post-injected fuelquantity to thereby appropriately allow for estimation of a totalinjected fuel at step 554 of algorithm 650 that includes only themain-injected fuel quantity and the pilot-injected fuel quantityinjected by the Kth fuel injector. It is desirable, although notrequired, at step 702 to additionally increase the main-injectionon-time portion of the injector on-time signal, IOT_(K), so that thetotal quantity of injected fuel after disabling any post-injectionon-time is equal to what the total quantity of injected fuel would havebeen had the post-injection on-time not been disabled. In embodimentswherein the pilot-injection fuel quantity model is continually orperiodically updated during normal operation of the engine 66,increasing the main-injection on-time of the injector on-time signal,IOT_(K), as just described will effectively maintain engine fuelinglevels near their requested fueling levels so that the engine operatorgenerally will not notice any decrease in engine output power resultingfrom disablement of the post-injection on-time. In an alternateembodiment of algorithm 700, the post-injection fuel quantity model ofalgorithm 650 may be incorporated into algorithm 700, and in thisembodiment step 702 may be omitted.

Step 510 of algorithm 700 advances to step 704 where control circuit 68is operable to estimate a total injected fuel quantity value, TIF_(K),corresponding to the sum of the pilot and main quantities of fuelinjected by the Kth fuel injector between steps 506 and 508 of algorithm700. In one embodiment, step 704 may accordingly be identical to step554 of algorithm 550 (FIG. 27) since the total-injected fuel quantity,TIF_(K) in this case corresponds to the total amount of fuel injected bythe Kth fuel injector while the fuel pump 54 is disabled as describedhereinabove with respect to FIG. 25. Control circuit 68 is thus operableat step 704 in this embodiment to estimate TIF_(K) as a function ofP_(B, K), P_(A, K), the bulk modulus value, BM, the injector on-time,IOT_(K), and the engine temperature value, ET, using the techniquesdescribed hereinabove with respect to FIGS. 1–19 as they relate todetermination of the injected fuel estimate, IFE, produced by the fuelinjection quantity estimation logic block first illustrated in FIG. 4.For example, control circuit 68 is operable in this embodiment toestimate a total discharged fuel estimate, TDFE_(K), as a function ofP_(B, K), P_(A, K) and the bulk modulus value, BM, or alternatively onlyas a function only of P_(B, K) and P_(A, K), to estimate a control flowleakage value, CFLE_(K), as a function of P_(B, K), P_(A, K) andIOT_(K), to optionally estimate a parasitic flow leakage value,PFLE_(K), as a function of P_(B, K), P_(A, K) and the engine temperaturevalue, ET, wherein ET may be the fuel temperature, FT, or the enginecoolant temperature, CT, and to compute TIF_(K) according to theequation TIF_(K)=TDFE_(K)−CFLE_(K) or optionally according to theequation TIF_(K)=TDFE_(K)−CFLE_(K)−PFLE_(K), all as describedhereinabove with respect to FIGS. 5–19. Alternatively, control circuit68 may be operable at step 604 to estimate TIF_(K) in accordance withany known technique for estimating the total fuel injected by the Kthfuel injector while the fuel pump 54 is disabled as describedhereinabove with respect to FIG. 25 and while any post-injectionon-times of the injector on-time signal, IOT_(K) are also disabled.

Step 704 advances to step 706 where control circuit 68 is operable tocompute an average pressure, P_(AVE,K), in the fuel collection unitduring fuel injection by the Kth injector; e.g., between steps 506 and508 of algorithm 700, according to the equationP_(AVE,K)=[(P_(B, K)+P_(A, K))/2]. Thereafter at step 708, controlcircuit 68 is operable to estimate the main-injected fuel quantityportion of the total injected fuel quantity, TIF_(K), determined at step554 using the main-injected fuel quantity model generated by algorithm600 of FIG. 28. Control circuit 68 is thus operable at step 700 toestimate the main-injected fuel quantity, EMIF_(K), as a function ofP_(AVE,K) and IOT_(K) according to the equationEMIF_(K)=a+b*P_(AVE,K)+c*IOT_(K)*SQRT(P_(AVE,K)). Thereafter at step710, control circuit 68 is operable to estimate the pilot-injected fuelquantity value, PLIF_(K), as the difference between the total injectedfuel quantity, TIF_(K), estimated at step 706 and the main-injected fuelquantity, EMIF_(K), estimated at step 708, according to the equationPLIF_(K)=TIF_(K)−EMIF_(K).

Following step 710, algorithm execution advances to step 712 wherecontrol circuit 68 is operable to determine whether PLIF_(K) values havebeen determined for “H” different engine operating conditions, wherein“H” may be any integer. It is desirable for the “H” different engineoperating conditions to cover a wide range of fuel pressures within thefuel collection unit, and in one embodiment, H=10, although other valuesof “H” may be used. In any case, if control circuit 68 determines atstep 712 that PLIF_(K) values have not been determined for “H” differentengine operating conditions, algorithm execution advances to step 714where control circuit 68 is operable either to modify engine operatingconditions, or to delay further execution of algorithm 700 until engineoperating conditions have been sufficiently modified as a result ofchanges in the engine or vehicle operating environment and/or changes indriver behavior. In either case, algorithm execution loops from step 714back to step 504.

If, on the other hand, control circuit 68 determines at step 712 thatPLIF_(K) values have been determined for “H” different engine operatingconditions, algorithm execution advances to step 716 where controlcircuit 68 is operable to determine the PLIF_(K) estimation equation ormodel, EPLIF_(K), as a function of the “H” different PLIF_(K) values. Inone embodiment, control circuit 68 is operable to execute step 716 bycomputing coefficients “g”, “h” and “i” of an EPLIF_(K) model of theform EPLIF_(K)=g+h*P_(AVE,K)+i*IOT_(K)*SQRT(P_(AVE,K)) applying a knownregression technique; e.g., least squares, to the “H” different PLIF_(K)values, wherein P_(AVE,K)=[(P_(B, K)+P_(A, K))/2] and represents anaverage pressure in the fuel collection unit during fuel injection bythe Kth fuel injector. Alternatively, control circuit 68 may be operableat step 716 to generate the EPLIF_(K) model, as a function of P_(B, K),P_(A, K) and IOT_(K) using other known curve fitting techniques. In anycase algorithm execution advances from step 716 to step 718 wherealgorithm execution returns to its calling routine, or alternatively tostep 502 for continual execution of algorithm 700.

It should be understood that the pilot-injected fueling model,EPLIF_(K), generated by algorithm 700 of FIGS. 31A and 31B is based onan injector on-time signal, IOT_(K), that includes only a main-injectionon-time and a post-injection on-time. Alternatively, algorithm 700 maybe modified to base the pilot-injected fueling model, EPLIF_(K), on aninjector on-time signal, IOT_(K), that includes pilot-injection,main-injection and post-injection on-times. For example, algorithm 700may be modified to account for inclusion of a post-injection on-timeinto the injector on-time signal by omitting step 702, including a stepjust before or just following step 708 that estimates the post-injectedfuel quantity based on the post-injected fuel quantity model, EPIF_(K),developed by algorithm 650, and modifying step 710 so thatPLIF_(K)=TIF_(K)−EMIF_(K)−EPIF_(K). The resulting pilot-injected fuelmodel, EPLIF_(K), formed at step 716 will then be based on an injectoron-time signal that includes a pilot-injection on-time, a main-injectionon-time and a post-injection on-time. The foregoing modifications toalgorithm 700 to generate a pilot-injected fuel quantity model forestimating pilot-injected fuel quantities based on an injector on-timesignal includes pilot-injection, main-injection and post-injectionon-times would be a mechanical step for a skilled artisan.

Algorithm 700 may be configured to continually run in the background,independently of any other algorithm described herein to therebycontinually update the pilot-injected fuel quantity model, EPLIF_(K),for the Kth fuel injector. Under experimental operating conditions, itwas determined that control circuit 68 was operable to update thepilot-injected fuel quantity model, EPLIF_(K), approximately once everyhour under typical engine operating conditions. It will be understood,however, that control computer 68 may be operable to update thepilot-injected fuel quantity model, EPLIF_(K), more or less quickly, andthat the actual time between model updates will depend largely upon howquickly or slowly engine operating conditions are changed sufficientlyso that “H” different PLIF_(K) values may be obtained. Alternatively,algorithm 700 may be configured to run periodically in the background,independently of any other algorithm described herein, to therebyperiodically update the pilot-injected fuel quantity model, EPLIF_(K),for the Kth fuel injector. Alternatively still, algorithm 700 may beconfigured to be executed only by a qualified service technician. Inthis embodiment algorithm 700 may be executed at the engine productionfacility to generate the pilot-injection fuel quantity model that willbe used thereafter during engine operation to estimate pilot-injectedfuel quantities. Algorithm 700 may additionally or alternatively beexecuted periodically or otherwise at an engine service facility toupdate the pilot-injection fuel quantity model. In any case, it willfurther be understood that while algorithm 700 is illustrated asgenerating a pilot-injected fuel quantity model, EPLIF_(K), for only theKth fuel injector, control circuit 68 is operable to execute identicalversions of algorithm 700 for each of the remaining “N” fuel injectorscarried by engine 66 so that pilot-injected fuel quantity modelsaccordingly exist for each of the “N” fuel injectors. The resulting “N”pilot-injected fuel quantity models may be used under any engineoperating conditions to estimate pilot-injected fuel quantities for eachof the “N” fuel injectors. It will be understood that the accuracy ofthe pilot-injected fuel quantity model is generally independent of, andnot affected by, the structural and/or operational configuration of theone or more fuel pumps.

Referring now to FIG. 32, is a flowchart is shown illustrating oneembodiment of a software algorithm 750 for minimizing pilot-injectedfueling variations using the pilot-injected fuel quantity modelgenerated by algorithm 700 of FIGS. 31A and 31B. Algorithm 750 may bestored in memory 75, and is in any case executed by control circuit 68.Algorithm 750 shares several steps in common with algorithm 670, andsuch common steps are accordingly identified with common referencenumbers in the illustration of algorithm 750 in FIG. 32. For example,steps 672–676 of algorithm 750 are identical to steps 672–676 ofalgorithm 670, and a description of the operation of such steps will notbe repeated here for brevity. In any case, algorithm 750 advances fromsteps 672 and 674 to step 752 where control circuit 68 is operable toestimate the quantity of pilot-injected fuel just injected by the Kthfuel injector using the pilot-injected fuel quantity model generated byalgorithm 700 of FIGS. 31A and 31B; e.g.,EPLIF_(K)=g+h*P_(AVE,K)+i*IOT_(K)*SQRT(P_(AVE,K)). Thereafter at step754, control circuit 68 is operable to determine for the Kth fuelinjector a pilot-injected fueling error, PLIFE_(K), as the estimatedpilot-injected fuel quantity, EPLIF_(K), less a commanded pilot-injectedfuel quantity value for the Kth fuel injector, CPLIF_(K), whereinCPLIF_(K) corresponds to a pilot-injection fuel quantity portion of thedesired fuel injection quantity, DF, illustrated and describedhereinabove with respect to FIG. 4.

Thereafter at step 756, control circuit 68 is operable to adjust thepilot-injection on-time of the injector on-time signal, IOT_(K), tominimize the pilot-injected fuel quantity error PLIFE_(K). In oneembodiment, control circuit 68 is operable to execute steps 754 and 756according to a conventional closed-loop control strategy that generatesthe pilot-injection fuel quantity error value, PLIFE_(K), and uses thiserror value to adjust the pilot-injection on-time of the injectoron-time signal, IOT_(K), in a manner that drives the error value tozero. Alternatively, control circuit 68 may be configured to implementother known closed-loop, open-loop or other known control strategies toadjust the pilot-injection on-time of the injector on-time signal in amanner that minimizes the pilot-injection fuel quantity error value,PLIFE_(K).

From the foregoing, it should be apparent that algorithm 750 illustratedin FIG. 32 is operable to adjust one or more of the injector on-timesignals, IOT, in a manner that minimizes the pilot-injection fuelquantity error, PLIFE_(K), between the estimated pilot-injection fuelquantity value, EPLIF_(K), and the commanded pilot-injected fuelquantity value, CPLIF_(K). In cases where the injector on-time signal,IOT_(K), includes only pilot-injection and main-injection on-times, theestimated pilot-injection quantity value, EPLIF, is estimated accordingto a pilot-injected fuel quantity model based, in part, on estimation ofa main-injected fuel quantity using a main-injected fuel quantity model.On the other hand, in cases where the injector on-time signal, IOT_(K),includes pilot-injection, main-injection and post-injection on-times,the estimated pilot-injection quantity value, EPLIF_(K), is estimatedaccording to a pilot-injected fuel quantity model based, in part, onestimation of a main-injected fuel quantity using a main-injected fuelquantity model and on estimation of a post-injected fuel quantity usinga post-injected fuel quantity model. In any case, it will be understoodthat an identical version of algorithm 750 is executed for each of the“N” fuel injectors carried by engine 66 to thereby minimize thepilot-injection fuel quantity errors between the estimatedpilot-injection fuel quantity values, EPLIF, and the commandedpilot-injection fuel quantity values, CPLIF for each of the “N” fuelinjectors. This approach accounts for any variations in themain-injection on-times, and in any pilot-injection on-times, of thevarious injector on-time signals, and algorithm 750 is accordinglyoperable to minimize cylinder-to-cylinder pilot- and main-injectionfueling variations within engine 66 as well as engine-to-engine pilot-and main-injection fueling variations.

The foregoing control strategies for minimizing auxiliary-injected fuelvariations may be incorporated into the overall total fuel injectionquantity estimation techniques described hereinabove to allow suchtechniques to be applicable to fuel systems having either synchronous orasynchronous operation of the fuel pump 54, applicable to engines havingany number of cylinders, and applicable under all engine operatingconditions.

It should further be apparent from the foregoing description that theconcepts of the present invention are applicable to variously configuredfuel and fuel control systems, including those having either cyclicallyor non-cyclically operated fuel collection units. For example, two fuelsystems particularly suited for use with the present invention aredisclosed in U.S. Pat. Nos. 5,676,114 and 5,819,704, which are assignedto the assignee of the present invention, and the disclosures of whichare incorporated herein by reference.

While the invention has been illustrated and described in detail in theforegoing drawings and description, the same is to be considered asillustrative and not restrictive in character, it being understood thatonly illustrative embodiments thereof have been shown and described andthat all changes and modifications that come within the spirit of theinvention are desired to be protected. For example, while themain-injected fuel quantity, post-injected fuel quantity andpilot-injected fuel quantity models have been illustrated and describedas each generally having the form c1+c2*P_(AVE)+c3*IOT*SQRT(P_(AVE)),wherein c1–c3 are constants, any one or more of these models may takedifferent known forms and/or may be generated using any known data orcurve fitting techniques.

In an alternative embodiment, the parasitic flow leakage estimate block150 (see FIG. 5) is embodied as a software algorithm 800. A flowchartillustrating one embodiment of the software algorithm 800 is shown inFIG. 33. The algorithm 800 may be stored in the memory device 75 and isexecuted by the control circuit 68. The software algorithm 800 isoperable to estimate a quantity of parasitic fuel leakage from a fuelinjection system of the fuel control system 50. A typical fuel injectionsystem includes a fuel collection unit, at least one fuel injector, andany interconnecting fuel lines or passages which fluidly couple the fuelcollection unit to the fuel injector(s). For example, the fuel injectionsystem of system 50 includes the fuel collection unit 56 or fuel rail92, fuel injectors 60, and the supply passages 62, 64, 94.

In some embodiments of algorithm 800, a bulk modulus data table isstored in memory device 75 in process step 802. An exemplary bulkmodulus data table 830 is illustrated in FIG. 34. The illustrative bulkmodulus data table 830 is an m×n table having m input rows correspondingto values or value ranges of the fuel pressure, or alternatively averagefuel pressure, of the fuel injection system of system 50 and n inputcolumns corresponding to values or value ranges of the fuel temperatureof fuel injection system of system 50. However, in other embodiments,the bulk modulus table 830 may be an m×n table having m rowscorresponding to values or value ranges of the fuel temperature and ncolumns corresponding to values or value ranges of the fuel pressure.Regardless of the configuration of the bulk modulus data table 830, abulk modulus value (β_(xy)) is stored in each output cell of the table830. Each bulk modulus value is based on the fuel pressure and fueltemperature values or value ranges associated with the row and column ofthe output cell wherein the bulk modulus value is stored. Accordingly,the bulk modulus data table 830 maps values or value ranges of fuelpressure and fuel temperature to bulk modulus values. The bulk modulusvalue for each fuel pressure and temperature value or value rangecombination may be obtained from reference materials or experimentallydetermined for the particular fuel of interest.

In process step 804, the control circuit 68 is operable to monitor foran occurrence of an engine motoring condition. An engine motoringcondition is a condition in which no fuel is supplied to the internalcombustion engine 66 (i.e., a “zero-fueling” condition), and the controlcircuit 68 may be configured to monitor for such a “zero-fueling”condition. Alternatively, an engine motoring condition may be acondition in which the internal combustion engine 66 is not producingtorque (i.e., a “zero-torque” condition), and, similarly, the controlcircuit 68 may be configured to monitor for such a condition.Regardless, if an engine motoring condition is detected, the controlcircuit 68 is operable to disable the operation of the fuel pump 54, byappropriately controlling the fuel pump actuator 53, so as to insure nopumping of fuel into the fuel collection unit. With the pump 54 shut offor otherwise restricted from pumping, the fuel collection unit ishydraulically locked during the motoring condition. Fuel is neitherbeing supplied to or drawn from the fuel injection system of system 50.However, parasitic leakage of the fuel injection system may result in aquantity of fuel leaking or otherwise escaping from the fuel injectionsystem (i.e., from the fuel collection unit 56 or fuel rail 92, from thefuel injectors 60, or from any supply passages 62, 64, 94 ).Accordingly, as used herein, the term “hydraulically locking” is definedas the condition of the volume of fuel contained within the fuelinjection system including one or more of the fuel collection unit, anynumber of fuel injectors coupled thereto, and any interconnection fuellines or passages when no fuel is being supplied to, or drawn from, thevolume.

Following the disablement of the operation of fuel pump 54 in processstep 806, the control circuit 68 is operable to determine if the enginemotoring condition is still occurring in process step 808. If thecontrol circuit 68 determines that the engine motoring condition is nolonger occurring, the control circuit 68 enables the operation of thefuel pump 54 in process step 822 so as to resume the supplying of fuelto the fuel injection system described above in regard to FIGS. 1A and1B. The algorithm 800 execution ends subsequent to step 822 or, inalternative embodiments, loops back to process step 804 wherein thecontrol circuit 68 is operable to continue monitoring for an enginemotoring condition.

If, however, in process step 808, the control circuit 68 determines thatthe engine motoring condition is still occurring, the control circuit 68is operable to determine a change in pressure (δP) value of the fuelinjection system in process step 810. The control circuit 68 maydetermine the change in pressure (δP) value by monitoring the fuelpressure within the fuel injection system; e.g., via the pressure sensor70 (FIG. 1A), the pressure sensor 96 (FIG. 1B) or the pressure sensor100 (FIG. 1B), over an appropriate period of time. For example, the fuelpressure signal (FP) received by the parasitic flow leakage estimateblock 150 on the signal lines 72 (see FIG. 5) may be monitored over apredetermined period of time to determine the change in pressure (δP)value. In some embodiments, the control circuit 68 is operable toconvert the change in pressure (δP) value to a predetermined data formatin process step 812. For example, the change in pressure (δP) value maybe converted to a change in pressure (δP) per crank degree value, achange in pressure (δP) per stroke value, or a change in pressure pertime. The control circuit 68 may be operable to convert the change inpressure (δP) value to the exemplary predetermined formats by, forexample, measuring the amount of degree displacement of a crankshaft ofthe engine 66 or the number of strokes of the engine 66 over the periodin which the change in pressure (δP) value is determined and dividingthe change in pressure (δP) value by the measured amount. The exemplarypredetermined formats may be determined by using appropriate operatingconditions such as the engine speed/position signal, ES/P, produced bysensor 76 on signal path 78.

Following process step 810 (or step 812 in alternative embodiments), thecontrol circuit 68 is operable in process step 814 to determine a bulkmodulus value of the fuel held within the fuel injection system. Inthose embodiments wherein the control circuit 68 in process step 802 isoperable to construct the bulk modulus table 830 (see FIG. 34) inmemory, the control circuit 68 may determine the bulk modulus value ofthe fuel by retrieving the bulk modulus value from the table 830 basedon values of the fuel pressure and the fuel temperature. The controlcircuit 68 determines the appropriate row of the table 830 using theaverage fuel pressure determined over the period of time in which themotoring condition occurs. The appropriate column of the table 830 isdetermined by using the fuel temperature of the fuel within the fuelinjection system. For example, if the average fuel pressure equals FuelPressure Value 3 and the fuel temperature equals Fuel Temperature Value2, the bulk modulus value β₃₂ is retrieved. If the determined values ofthe fuel pressure and fuel temperature are not represented in the rowsand columns, respectively, of the table 830, the appropriate bulkmodulus value may be obtained by interpolation. Alternatively, if thefuel pressure and temperature ranges are used in table 830, averagevalues of the bulk modulus may be retrieved based on the ranges of fuelpressure and temperature within which the determined fuel pressure andtemperature values fall. The fuel pressure may be determined from thefuel pressure signal (FP) received by the parasitic flow leakageestimate block 150 on the signal lines 72. The fuel temperature may bedetermine from the engine temperature signal (ET) received by theparasitic flow leakage estimate block 150 on the signal lines 90. Thevalues of the bulk modulus stored in the bulk modulus table 830 arebased on the particular fuel type used in the system 50 and may beobtained from reference materials or experimentally determined asdiscussed above in regard to process step 802. Alternatively, thecontrol circuit 68 may be operable in process step 814 to calculateonline the bulk modulus value of the fuel held within the fuel injectionsystem. For example, the instantaneous bulk modulus (β_(i)) valuedetermined by the pre & post injection fuel pressure slope determinationblock 166 and produced on signal path 163 may be used in process step814 to determine the bulk modulus value of the fuel.

Subsequent to process step 814, the control circuit 68 is operable inprocess step 816 to calculate a quantity of parasitic fuel leakage fromthe fuel injection system of system 50 based on the bulk modulus valuedetermined in process step 814. Because the fuel injection system ishydraulically locked (as defined above), any leakage from the fuelinjection system may be categorized as a parasitic fuel leakage. Thecontrol circuit calculates the quantity of parasitic fuel leakage fromthe fuel injection system using the following equation:ParasiticLeakage=(TotalVolume*δP)/β

wherein ParasiticLeakage is the quantity of parasitic fuel leakage fromthe fuel injection system, TotalVolume is the total volume of the fuelinjection system (i.e., the combined volume of the fuel collection unit56 or fuel rail 92, the fuel injector 60, and any interconnecting fuellines or supply passages 62, 64, 95) which may be predetermined off-lineusing known volume determination methods or from associated referencematerials, δP is the change in pressure value determined in process step810, and β is the bulk modulus value of the fuel held within the fuelinjection system as determined in process step 814. The quantity ofparasitic leakage calculated in the process step 814 is a quantity ratebased on, for example, per time unit, per crank degree, per enginerotation, per stroke value, or similar engine conditions.

The control computer 68 compares the quantity of parasitic fuel leakageto a threshold value in process step 818. If the control computer 68determines that the quantity of parasitic fuel leakage is less than thethreshold value, the algorithm 800 execution loops back to process step808 wherein the control computer 68 determines if the motoring conditionis still occurring and, if so determined, repeats the parasitic fuelleakage quantity computation process of process steps 810–818. If,however, the quantity of parasitic fuel leakage is greater than thethreshold value, the control circuit produces a fault signal in processstep 820. The fault signal may be used by other sub-circuits of thecontrol circuit 68 for fault determination processes, trigger events,and/or the like. For example, a sub-circuit of control circuit 68 may beconfigured to illuminate a fault light, activate an audible alarm, orotherwise alert an operator of the system 50 to the fault.Alternatively, in process step 820, the control computer 68 may beoperable to monitor the quantity of parasitic fuel leakage over a periodof time and produce a fault signal or perform a predetermine functionbased on an amount of increase in the determined parasitic fuel leakagequantity over such period of time. For example, the control computer 68may be operable to produce a fault signal or alert a driver of a vehicleif the quantity of parasitic fuel leakage increases over time with aparticular pattern. Regardless, after the control circuit 68 produces afault signal or performs a fault associated function in process step820, the algorithm 800 loops back to process 808 wherein the controlcomputer 68 is operable to determine if the motoring condition is stilloccurring and, if so determined, to repeat the parasitic fuel leakagequantity computation process of process steps 810–818.

While the system and method for estimating a quantity of a parasiticleakage has been disclosed in the context of a fuel system, it isanticipated that the system and method are applicable to otherapplications to estimate quantities of parasitic leakage of a fluid froma fluid collection unit and, therefore, should not be construed asrestricted to fuel collection unit applications. For example, thedisclosed system and method for estimating a quantity of parasiticleakage may be used in other engine fluid applications, various motorvehicle fluid applications, and other applications in which an amount offluid leakage from a fluid collection unit is to be determined.

1. A system for estimating parasitic fuel leakage from a fuel injectionsystem for an internal combustion engine, the parasitic fuel leakagecorresponding to a leakage of a fuel from the fuel injection system whenno fuel is being supplied to, or drawn from, the fuel injection system,the fuel injection system including a fuel collection unit fluidlycoupled to at least one fuel injector associated with the engine, thesystem comprising: a pressure sensor producing a pressure signalindicative of fuel pressure within the fuel injection system; means fordetermining an engine operating condition; and a control circuitconfigured to estimate a quantity of parasitic fuel leakage as afunction of the pressure signal and the engine operating condition. 2.The system of claim 1, wherein the pressure sensor is coupled to thefuel collection unit.
 3. The system of claim 1, wherein the pressuresensor is coupled to the fuel injector.
 4. The system of claim 1,wherein the pressure sensor is coupled a fuel line, the fuel linefluidly coupling the fuel collection unit to the at least one fuelinjector.
 5. The system of claim 1, wherein the control circuit isfurther configured to multiply the quantity of parasitic fuel leakage byan engine speed ratio, the engine speed ratio corresponding to acalibration engine speed divided by a measured engine speed of theinternal combustion engine.
 6. The system of claim 1, wherein the meansfor determining an engine operating condition includes means fordetermining an engine temperature.
 7. The system of claim 6, furthercomprising a data storage medium having stored therein a data tablemapping values of the pressure signal and the engine temperature toestimated parasitic fuel leakage values; wherein the control circuit isconfigured to estimate the quantity of parasitic fuel leakage via thedata table.
 8. The system of claim 6, wherein the means for determiningan engine temperature includes means for determining an engine coolanttemperature.
 9. The system of claim 6, wherein the means for determiningan engine temperature includes means for determining a fuel temperature.10. The system of claim 9, wherein the means for determining a fueltemperature includes a fuel temperature sensor producing a temperaturesignal indicative of a fuel temperature of the fuel injection system.11. The system of claim 10, wherein the control circuit is furtherconfigured to determine a change in pressure value based on the pressuresignal.
 12. The system of claim 11, wherein the control circuit isfurther configured to determine a bulk modulus value of the fuel andestimate the quantity of parasitic fuel leakage based on the change inpressure value and the bulk modulus value.
 13. The system of claim 12,further comprising a data storage medium having stored therein a bulkmodulus data table mapping values of the pressure signal and thetemperature signal to bulk modulus values of the fuel.
 14. The system ofclaim 12, wherein the control circuit is configured to estimate thequantity of parasitic fuel leakage based on the following equation:Leakage=(Volume**Pressure)/Bulk Modulus wherein Leakage is the estimatedquantity of parasitic fuel leakage, Volume is a value of volume of thefuel injection system, *Pressure is the change in pressure value, andBulk Modulus is the bulk modulus value of the fuel.
 15. The system ofclaim 1, wherein the means for determining an engine operating conditionincludes means for determining an engine motoring condition.
 16. Thesystem of claim 1, wherein the means for determining an engine motoringcondition includes means for determining a no fueling condition.
 17. Thesystem of claim 15, wherein the control circuit is further configured todetermine a change in pressure value based on the pressure signal. 18.The system of claim 17, wherein the control circuit is furtherconfigured to determine a bulk modulus value of the fuel and estimatethe quantity of parasitic fuel leakage based on the change in pressurevalue and the bulk modulus value.
 19. The system of claim 18, furthercomprising a fuel temperature sensor producing a temperature signalindicative of a fuel temperature of the fuel injection system.
 20. Thesystem of claim 19, further comprising a data storage medium havingstored therein a bulk modulus table mapping values of the pressuresignal and the temperature signal to bulk modulus values of the fuel;wherein the control computer is configured to determine the bulk modulusvalue of the fuel via the bulk modulus data table.
 21. The system ofclaim 18, wherein the control circuit is configured to estimate thequantity of parasitic fuel leakage based on the following equation:Leakage=(Volume**Pressure)/Bulk Modulus wherein Leakage is the estimatedquantity of parasitic fuel leakage, Volume is a value of volume of thefuel injection system, *Pressure is the change in pressure value, andBulk Modulus is the bulk modulus value of the fuel.
 22. The system ofclaim 15, further comprising: a fuel supply having stored therein aquantity of the fuel; a fuel pump fluidly coupled to the fuel supply andfluidly coupled to the fuel injection system, the fuel pump configuredto pump the fuel from the fuel supply to the fuel injection system inresponse to a trigger signal and to discontinue pumping the fuel to thefuel injection system in response to a stop signal; wherein the controlcircuit is configured to produce the stop signal in response to themotoring condition.
 23. The system of claim 17, wherein the controlcircuit is further configured to convert the change in pressure value toa predetermined data format.
 24. The system of 23, wherein thepredetermined data format includes a change in pressure per crank degreeof the internal combustion engine data format.
 25. The system of 23,wherein the predetermined data format includes a change in pressure perstroke of the internal combustion engine data format.
 26. The system ofclaim 1, wherein the fluid collection unit includes a fuel accumulator.27. The system of claim 1, wherein the fuel collection unit includes afuel rail.
 28. The system of claim 1, wherein the control circuit isfurther configured to produce a fault value if the estimated quantity ofparasitic fuel leakage is greater than a threshold value.
 29. The systemof claim 1, wherein the control circuit is further configured to alertan operator of the internal combustion engine if the estimated quantityof parasitic fuel leakage is greater than a threshold value.
 30. Amethod for estimating a quantity of parasitic fuel leakage from a fuelinjection system for an internal combustion engine, the parasitic fuelleakage corresponding to a leakage of a fuel from the fuel injectionsystem when no fuel is being supplied to, or drawn from, the fuelinjection system, the fuel injection system including a fuel collectionunit fluidly coupled to at least one fuel injector associated with theengine, the method comprising the steps of: hydraulically locking thefuel injection system; determining a pressure value indicative of fuelpressure within the fuel injection system when the fuel injection systemis hydraulically locked; determining an engine operating condition whenthe fuel injection system is hydraulically locked; and estimating thequantity of parasitic fuel leakage as a function of the engine operatingcondition and the pressure value.
 31. The method of claim 30, whereinhydraulically locking the fuel injection system includes discontinuingsupplying fuel to and drawing fuel from the fuel injection system. 32.The method of claim 30, wherein hydraulically locking the fuel injectionsystem includes disabling the operation of a fuel pump.
 33. The methodof claim 30, wherein determining a pressure value includes receiving apressure signal from a pressure sensor coupled to the fuel collectionunit.
 34. The method of claim 30, wherein determining a pressure valueincludes receiving a pressure signal from a pressure sensor coupled tothe at least one fuel injector.
 35. The method of claim 30, whereindetermining a pressure value includes receiving a pressure signal from apressure sensor coupled to a fuel line fluidly coupled to the fuelcollection unit and the at least one fuel injector.
 36. The method ofclaim 30, further comprising the step of multiplying the quantity ofparasitic fuel leakage by an engine speed ratio corresponding to acalibration engine speed divided by a measured engine speed of theinternal combustion engine.
 37. The method of claim 30, whereindetermining an engine operating condition includes determining an enginetemperature.
 38. The method of claim 37, wherein estimating the quantityof parasitic fuel leakage includes retrieving the quantity of parasiticfuel leakage from a data table stored in a data storage medium, theretrieving step being based on values of the pressure signal and theengine temperature.
 39. The method of claim 37, wherein determining anengine temperature includes determining an engine coolant temperature.40. The method of claim 37, wherein determining an engine temperatureincludes determining a fuel temperature.
 41. The method of claim 40,wherein determining a fuel temperature includes receiving a temperaturesignal indicative of a fuel temperature of the fuel from a fueltemperature sensor.
 42. The method of claim 41, further comprising thestep of determining a change in pressure value based on the pressurevalue.
 43. The method of claim 42, further comprising the step ofdetermining a bulk modulus value of the fuel, wherein estimating thequantity of parasitic fuel leakage includes estimating the quantity ofparasitic fuel leakage based on the change in pressure value and thebulk modulus value.
 44. The method of claim 43, wherein determining abulk modulus value of the fuel includes determining the bulk modulusvalue of the fuel based on the pressure value and the temperaturesignal.
 45. The method of claim 43, wherein estimating the quantity ofparasitic fuel leakage includes estimating the quantity of parasiticfuel leakage based on the following equation:Leakage=(Volume**Pressure)/Bulk Modulus wherein Leakage is the estimatedquantity of parasitic fuel leakage, Volume is a value of volume of thefuel injection system, *Pressure is the change in pressure value, andBulk Modulus is the bulk modulus value of the fuel.
 46. The method ofclaim 30, wherein determining an engine operating condition includesdetermining an engine motoring condition.
 47. The method of claim 46,further comprising the step of determining a change in pressure valuebased on the pressure value.
 48. The method of claim 47, whereindetermining a change in pressure value based on the pressure valueincludes monitoring the pressure value over a period of time.
 49. Themethod of claim 47, further comprising the step of determining a bulkmodulus value of the fuel, wherein estimating the quantity of parasiticfuel leakage includes estimating the quantity of parasitic fuel leakagebased on the change in pressure value and the bulk modulus value. 50.The method of claim 49, further comprising the step of determining atemperature value of the fuel.
 51. The method of claim 50, whereindetermining the bulk modulus value of the fuel includes determining thebulk modulus value of the fuel based on the pressure value and thetemperature value.
 52. The method of claim 50, further comprising thestep of storing a bulk modulus data table having a first inputcorresponding to a value of fuel pressure, a second input correspondingto a value of fuel temperature, and an output corresponding to a bulkmodulus value in a data storage medium.
 53. The method of claim 52,wherein determining the bulk modulus of the fuel includes retrieving abulk modulus value of the fuel from the bulk modulus data table based onthe pressure value and the temperature value.
 54. The method of claim49, wherein estimating the quantity of parasitic fuel leakage includesestimating the quantity of parasitic fuel leakage based on the followingequation:Leakage=(Volume**Pressure)/Bulk Modulus wherein Leakage is the estimatedquantity of parasitic fuel leakage, Volume is a value of volume of thefuel injection system, *Pressure is the change in pressure value, andBulk Modulus is the bulk modulus value of the fuel.
 55. The method ofclaim 30, further comprising the step of converting the change inpressure value to a predetermined data format.
 56. The method of claim55, wherein converting the change in pressure value to a predetermineddata format includes converting the change in pressure value to a changein pressure per crank degree of the internal combustion engine datavalue.
 57. The method of claim 55, wherein converting the change inpressure value to a predetermined data format includes converting thechange in pressure value to a change in pressure per stroke of theinternal combustion engine data format.
 58. The method of claim 30,further comprising the step of comparing the quantity of parasitic fuelleakage to a threshold value.
 59. The method of claim 58, furthercomprising the step of producing a fault value if the quantity ofparasitic fuel leakage is greater than the threshold value.
 60. Themethod of claim 58, further comprising alerting an operator of a motorvehicle if the quantity of parasitic fuel leakage is greater than thethreshold value.
 61. A method for estimating a quantity of parasiticfuel leakage from a fuel injection system for an internal combustionengine, the parasitic fuel leakage corresponding to a leakage of a fuelfrom the fuel injection system when no fuel is being supplied to, ordrawn from, the fuel injection system, the fuel injection systemincluding a fuel collection unit fluidly coupled to at least one fuelinjector associated with the engine, the method comprising the steps of:determining an engine motoring condition of the internal combustionengine; discontinuing supplying fuel to and drawing fuel from the fuelinjection system in response to the operating condition; determining atemperature value of the fuel; determining a pressure value of the fuelinjection system; determining a change in pressure value of the fuelinjection system based on the pressure value; determining a bulk modulusvalue of the fuel based on the temperature value and the pressure value;and estimating the quantity of parasitic fuel leakage based on thechange in pressure value and the bulk modulus value.